无法在模板之间链接。不是直接的。模板文件就是WordPress将用于根据URL呈现找到的帖子的文件。您可以在Template Hierarchy. 因此,要解决这个问题,我们需要确定页面何时显示“所有帖子”,以及如何链接到该页面。
我们需要做的第一件事是在“设置”>“读取”中设置正确的设置。您的评论提到,您将此设置用于在主页上显示您的最新帖子。这是不正确的。我们之所以知道这一点,是因为您希望在单击“所有帖子”链接时显示最新的帖子,而不是主页,主页根据自定义查询仅显示一些帖子。
因此,我们需要做的是创建一个页面,在“页面”下添加新页面,并将该页面设置为首页。然后我们需要创建另一个页面,并将其设置为Posts页面。
接下来要做的是确定我们需要的模板。如果查看上面链接的模板层次结构,我们可以看到站点首页将使用front-page.php
样板这是您应该用来显示“两个显著类别的最新帖子”的模板。因此,请复制当前home.php
模板导入front-page.php
.
然后,对于“所有帖子”页面,我们可以在模板层次结构中看到博客索引页面将使用的home.php
, 或(&M);如果这不存在—index.php
. 所以如果index.php
正在显示“所有帖子”页面所需内容,您只需删除即可home.php
.
因此,您应该可以使用front-page.php
显示所需类别中的帖子,以及显示所有最新帖子的“所有帖子”页面,使用index.php
.
最后一步是获取指向所有帖子页面的链接。您可以通过以下方式获得最新帖子页面的链接:
<?php
$url = get_the_permalink( get_option( \'page_for_posts\' ) );
echo \'<a href="\'. esc_url( $url ) . \'">All Posts</a>\';
?>
get_option( \'page_for_posts\' )
获取在“设置”>“阅读”中设置为“发布”页面的页面ID,以及
get_the_permalink()
获取指向该页的链接。这将允许您在不破坏模板的情况下更改该页面的标题或slug。