我注意到当我从wordpress模板调用the_post()或the_content()函数时,它会自动解析数据库数据以用<br/>
替换换行,用<p>
标签包装文本等...在the_post()或the_content()中可能存在某种“格式”功能。
我写了一个查询来直接从wp_posts获取帖子。然后我打印出来像
<?php
$results = $wp->get_results($sql)
foreach($results as $row) echo $row->post_content; ?>
显然,这个数据不是由wordpress'“format”函数解析的。输出此内容的正确方法是什么,使其经历与the_post()或the_content()相同的“格式化”功能?
答案 0 :(得分:9)
@dpelletier是对的,您只需将该函数应用于$row->post_content
字符串即可。
如果您希望WordPress执行通常对内容执行的所有操作,包括wpautop
和解析短代码,请使用;
$content = apply_filters('the_content', $row->post_content);
答案 1 :(得分:1)
有一个名为wpautop()
的函数。
仅添加<p>
和<br/>
,因此我不确定是否还有其他格式化功能可以执行其他操作。