Использование шорткодов WordPress прииспользуется для отображения контента - PullRequest
0 голосов
/ 27 мая 2011

Я работаю на одностраничном сайте, где я отображаю контент с других страниц на этой единственной странице. Для этого я добавил функцию, которая позволяет мне использовать <?php echo getPageContent(ID); ?>, это работает нормально, за исключением случаев, когда мне нужно отобразить контент из шорткода, вместо этого он просто выводит код в виде текста. Есть идеи обойтись?

Ответы [ 2 ]

4 голосов
/ 27 мая 2011

Чтобы получить правильное форматирование и заменить шорткоды, необходимо применить фильтры, подключенные к тегу the_content, примерно так:

echo apply_filters('the_content', getPageContent(ID));
0 голосов
/ 27 мая 2011

Есть ли причина, по которой вы выбрали эту стратегию для отображения контента? Использование чего-то большего в соответствии с обычной системой разработки и шаблонирования WordPress, скорее всего, решит вашу проблему. Я рекомендую использовать комбинацию get_posts () и setup_postdata ()

Из документов WordPress:

<?php
global $post;
$tmp_post = $post;
$args = array( 'numberposts' => 5, 'offset'=> 1, 'category' => 1 );
$myposts = get_posts( $args );
foreach( $myposts as $post ) : setup_postdata($post); ?>
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
<?php $post = $tmp_post;
?>

См .: http://codex.wordpress.org/Template_Tags/get_posts

...