我使用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;
}
?>
答案 0 :(得分:1)
您需要过滤内容。
apply_filters('the_content', $pagg->post_content);
这将返回格式化文本,已处理的短代码和有效的omebeds。
如果您调用setup_postdata()或使用循环中的内容,则会自动执行此操作。
答案 1 :(得分:0)
由于某种原因,WordPress不喜欢p
个元素。它的WYSIWYG编辑器从不(或很少)插入它们。
通过wpautop()
运行字符串以添加p
元素。