我正在尝试检索特定帖子的帖子内容:
$post = get_post(/* id */);
$content = $post->post_content;
但是,这将检索不带换行符的内容,并忽略所有<p>
标签。在不剥离<p>
标签(如帖子页面或帖子编辑器“文本”选项卡上所示)?
我正在尝试检索特定帖子的帖子内容:
$post = get_post(/* id */);
$content = $post->post_content;
但是,这将检索不带换行符的内容,并忽略所有<p>
标签。在不剥离<p>
标签(如帖子页面或帖子编辑器“文本”选项卡上所示)?
到目前为止,这两个答案都是正确的,但似乎需要一个更彻底的答案。
如果使用此选项:
$content = wpautop( $post->post_content );
您正在应用向帖子内容添加段落标记的函数。wpautop()
是许多钩住的函数(有时包括插件函数)之一the_content
, 因此,如果您这样做:$content = apply_filters(\'the_content\', $post->post_content);
您正在通过上的任何筛选器运行帖子内容the_content
其中包括wpautop()
默认情况下。最后,如果你在循环中,你可以这样做:
$content = apply_filters( \'the_content\', get_the_content() );
它本质上是第二个代码段的包装器,但它看起来当然有点好看 2018年9月1日更新:根据comment. 道具@timmb。一般来说,我认为最好的“正确方法”是从最后一个到第一个,因为使用核心WP函数应该能够实现更多的向后兼容性(至少理论上是这样)。接下来要做的唯一其他决定是是否允许WordPress和插件也修改帖子内容。如果是这样,一定要使用第二个或第三个选项。
找到解决方案:
$content = apply_filters(\'the_content\', $post->post_content);
使用p标记获取帖子内容的第二种方法是
echo wpautop( $post->post_content );
我有一个Wordpress网站,有很多页面和博客帖子。我想创建一个新网站,但保留所有博客帖子,只有博客帖子,没有页面。我怎样才能做到这一点?当我从mysql备份数据库时,所有内容都会传递到新站点,但我只想备份博客帖子。WordPress Backups