2013-08-19 2 views
0

Я хочу добавить два настраиваемых поля в таблицу wp_posts и что мне нужно для моего плагина. Теперь для того, чтобы эти поля я изменил файл ядра WordPressСоздать пользовательский столбец в таблице столбец в wordpress

wordpress/wp-admin/post.php 
$data = compact(array('post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_content_filtered', 'post_title', 'post_excerpt', 'post_status', 'post_type', 'comment_status', 'ping_status', 'post_password', 'post_name', 'to_ping', 'pinged', 'post_modified', 'post_modified_gmt', 'post_parent', 'menu_order', 'post_mime_type', 'guid')); 

здесь я добавил два поля, которые я хочу.

Теперь я хочу, чтобы эти вещи были установлены (я вручную добавил сюда два поля).

Итак, как это сделать в плагине.

Я прочитал один пост

http://wp.tutsplus.com/tutorials/creative-coding/add-a-custom-column-in-posts-and-custom-post-types-admin-screen/ 

здесь крючки используются в теме function.php, но я хочу сделать в самом плагине.

Я использую wordpress 3.6.

все равно какое-либо недоразумение, прокомментируйте комментарий.

+1

Вы делаете это неправильно 2 раза: не изменять основные файлы и не изменять основные таблицы базы данных. Ваша цель не ясна, но я думаю, что вам нужно сделать с помощью пользовательских полей, которые хранятся в таблице 'wp_postmeta'. – brasofilo

+0

yes @brasofilo, вы правы, я также не хочу изменять основные файлы, но мне нужно добавить несколько полей для каждого сообщения, чтобы как это сделать? n thats моя цель добавить дополнительное поле к каждому сообщению –

+0

Нет, это решение, которое вы придумали для достижения цели. Для чего вам нужны эти поля? – brasofilo

ответ

0

Как указано в комментариях к вопросу, вы никогда не должны редактировать файлы wp core (причина: они перезаписываются при обновлениях), и вы никогда не должны изменять таблицы wp (может вызвать сбои при обновлениях).
Вы разрабатываете плагин, то у вас есть несколько вариантов для настройки базы данных:
1) Вы можете использовать существующие таблицы базы данных
* Вы можете использовать таблицу PostMeta
2) если по какой-либо причине вы можете» t используйте post meta, создайте свой собственный стол
* добавьте 2 столбца, которые вам нужны, и столбец как идентификатор сообщения, таким образом все будет работать плавно

PS: вы можете использовать в своем плагине все функции wordpress, просто искать их в кодексе и посмотреть, как вам нужно их использовать.

также проверить this info about creating database tables with plugins

+0

hello alex now Я использовал postmeta table, но теперь во время запроса огня как поставить запрос? –

+0

Я не понимаю, что вы подразумеваете под «во время запроса пожара, как поставить запрос», хотите ли вы запрашивать сообщения из своей базы данных по почтовому мета-полю? если это так, вы можете проверить это [ссылка для wordpress codex] (http://codex.wordpress.org/Template_Tags/get_posts), где вас больше всего интересуют meta_key и meta_value –