2015-11-30 2 views
1

Где я могу найти файл, где the_content() получает значение от post_content в базе данных?PHP WordPress the_content()

Я хотел сделать концепцию, но с другим контентом из базы данных, До сих пор я добавил новый столбец в базу данных ex. post_content2 Как я могу получить его значение, используя что-то вроде

<?php the_content2(); ?> 

Я пытался смотреть на post-template.php и нашел функцию, но не так, как он получает значение из POST_CONTENT базы данных.

+0

'the_content()' получает значение из таблицы 'posts' в вашей базе данных (из столбца под названием' content'). –

+2

Я не уверен, что вы спрашиваете, но я буду замечать, что это почти не всегда - хорошая идея изменить либо основной код Wordpress, либо основные таблицы wordpress. Любая модификация wordpress должна выполняться через плагины или темы, иначе вы либо не сможете обновить wordpress, либо обновления уничтожат ваш код. – samlev

+4

Редактирование схемы таблицы wordpress - очень плохая идея - вместо этого используйте мета-поле – Steve

ответ

7

Из приведенных выше замечаний и более полного ответа:

  1. ли не изменений основных таблиц WP. Либо используйте функции post_meta, либо добавьте новую таблицу.

  2. the_content() - это просто удобная функция, которая напрямую обращается к таблице posts, content. Вы можете сделать то же самое в любое время, получив значение из базы данных и пройдя его через apply_filters('the_content', $my_custom_content);. Если вы хотите, чтобы написать свою собственную the_content2() функцию, она может/должна быть сделана таким образом (используя post_meta метод, упомянутый выше):

    function the_content2() { 
        // Global in the current post so we can get the ID 
        global $post; 
        // Load your custom content 
        $my_content = get_post_meta($post->ID, 'my_custom_content'); 
        // Echo it out (like the_content()) applying 'the_content' filters 
        echo apply_filters('the_content', $my_content); 
    } 
    

Если вы хотите, чтобы выяснить, как сохранить это содержание, то вы можете прочитать эту рецензию:

How to Create Custom Meta Boxes in WordPress

редактировать
стоит отметить, что эта функциональность уже availa в несколько разных плагинов, которые вы можете установить. По моему опыту Custom Field Suite является самым надежным и простым в использовании (но это только мое мнение).

+0

Спасибо много, но об изменении, которое я сделал, удалит колонку/строку, которую я добавил, полностью восстановит таблицу в обычном режиме? –

+1

Если это единственная модификация, которую вы сделали для таблицы, то она должна. – samlev

Смежные вопросы