Get Content From Blog Page

时间:2014-10-02 作者:Howdy_McGee

我有一个被指定为“博客”的页面。我想允许的是,用户将内容添加到此页面,然后在帖子显示在index.php. 我想我过去可以用这种方法做到:

<?php 
    $blog = get_option(\'page_for_posts\');
    echo apply_filters(\'the_content\', get_the_content($blog)); 
?>
出于某种原因,它决定拉取第一篇帖子,而不是实际拉取页面内容。这是一个bug还是有其他方法可以提取博客页面内容?

2 个回复
最合适的回答,由SO网友:Nicolai Grossherr 整理而成

您正在使用get_the_content() 错了,不能用身份证get_option(\'page_for_posts\') 确实返回,并且通常在循环中获取当前帖子的内容,必须在其中使用它。

要获取该页面的实际内容,可以执行以下操作:

$page_for_posts_id = get_option( \'page_for_posts\' );
$page_for_posts_obj = get_post( $page_for_posts_id );
echo apply_filters( \'the_content\', $page_for_posts_obj->post_content );
或:

$page_for_posts_id = get_option(\'page_for_posts\');
echo get_post_field( \'post_content\', $page_for_posts_id );

SO网友:William Wilkerson

在使用块的新WP编辑器中,接受答案中的第二个代码块不会呈现块。要让它们渲染,请使用以下命令。

$page_for_posts_id = get_option( \'page_for_posts\' );
echo apply_filters( \'the_content\', get_post_field( \'post_content\', $page_for_posts_id ) );
接受答案中的第一个代码块仍然有效。

结束

相关推荐

如何将WP MultiSite配置为使用/Blog/作为路径结构的一部分?

我正在使用子目录将现有的一组站点迁移到多站点,需要精确匹配url路径,并且与根安装上默认插入的/blog/路径发生冲突。我已经梳理了所有关于这个问题的帖子,但还没有找到我的具体问题的答案,所以就这样。我正在努力实现以下目标:示例。com/blog(英语博客)示例。com/fr/blog(法语)示例。com/ja/blog(日语)等。默认情况下,在根安装路径中插入/blog/时,多站点会限制您使用它,在子路径(即/fr/blog)中使用它也是如此。有什么想法吗?我完全被难住了。谢谢