Использование get_pages () в WordPress убирает мои <p>теги - PullRequest
2 голосов
/ 20 июня 2011

Я использую get_pages(), чтобы извлечь заголовок и содержимое каждой из моих страниц верхнего уровня и отобразить их на одной странице.К сожалению, он удаляет все мои <p> теги, и я не уверен, почему.Если у тега <p> есть стиль или класс, он будет сохранен, но все обычные теги <p> будут удалены.Вот мой код:

 <?php 
  $pages = get_pages('parent=0'); 
  foreach ($pages as $pagg) {
    $option = '<div class="section">';
    $option .= $pagg->post_title;
    $option .= $pagg->post_content;
    $option .= '</div>';
    echo $option;
  }
 ?>

РЕДАКТИРОВАТЬ: Алекс был достаточно хорош, чтобы дать ответ.Решение ниже.

 <?php
  $pages = get_pages('parent=0'); 
  foreach ($pages as $pagg) {
    $option = '<div class="section">';
    $option .= $pagg->post_title;
    $option .= wpautop($pagg->post_content);
    $option .= '</div>';
    echo $option;
  }
 ?>

Ответы [ 2 ]

1 голос
/ 20 июня 2011

Вам необходимо отфильтровать содержимое.

apply_filters('the_content', $pagg->post_content);

Это вернет отформатированный текст, обработанные шорткоды и работающие омбэды.

Это произойдет автоматически, если вы вызываете setup_postdata () или используете содержимое цикла.

0 голосов
/ 20 июня 2011

WordPress почему-то не нравится p элементы.Его редактор WYSIWYG никогда (или редко) не вставляет их.

Пропустите строку через wpautop(), чтобы добавить p элементы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...