2012-04-04 4 views
0

я пытаюсь вставить пост/страницу в одну из моих тем файлов и он не отображать шорткоды или PHPWordPress содержания сообщений/страницы в коде

я создал страницу под названием дом в WordPress админы-застекленные и вставляемый в мой код:

<div id="home_page"> <!-- echos the content from the page "home" id:43 --> 
      <?php $home_id = 43; 
      $home_page = get_page($home_id); 
      ?> 
      <?php echo $home_page->post_content; ?> 
    </div> <!-- end #home_page --> 

и не те короткие коды, которые у меня на странице работают. Я установил php in post or page и попытался использовать php, и он не работает.

, когда я вставить

echo do_shortcode('[youtube_sc url=http://www.youtube.com/watch?v=Db3XGpt6nNU]'); 

непосредственно в коде он работает.

Кто-нибудь знает, что это происходит?

спасибо.

ответ

1

Я получил ответ в wordpress.stackexchange.com

Цитирую:

Вам нужно применить фильтр the_content, например:

<?php echo apply_filters('the_content',$home_page->post_content); ?> Кроме того, вам не нужны специальные короткие коды для youtube, просто введите URL-адрес в t он содержит (но не гиперссылку), и он будет заменен для проигрывателя YouTube во время выполнения. Никаких плагинов или дополнительного кода не требуется благодаря oembed.

Спасибо Tom J Nowell

0

Значение $ home_page-> post_content - это точный постсодержание, хранящийся в базе данных. Повторение этого не дает ни одному из ваших коротких кодов шанс на запуск.

Вы должны использовать «WordPress Loop» для отображения содержимого, поскольку это позволяет вам использовать теги шаблонов, такие как the_title() и the_content() - это вызовет функции обработки для коротких кодов и других функций как wpautop(), что «массажирует» содержимое для вывода.

Если вы не хотите использовать Loop, вы можете выводить содержимое с помощью echo do_shortcode ($ home_page-> post_content);

Это запустит содержимое сообщения через процессор коротких сообщений, давая возможность коротких кодов запускать.

Более подробную информацию о том, как WordPress «массаж» публикуйте материалы, вы можете посмотреть здесь: http://codex.wordpress.org/How_WordPress_Processes_Post_Content