WordPress 不使用 home.php 而是使用 index.php 作为帖子页面。

Cha*_*d N 5 php wordpress

所以我试图让我的博客页面按照模板层次结构使用 home.php,但它似乎没有使用它。我还使用正确使用 front-page.php 的首页。

如果我进入设置->阅读->并选择我的博客页面作为帖子页面,它似乎会跳过 home.php 并转到 index.php。

我还转到外观->自定义并选择了那里的博客页面,当我选择那里的博客页面时,它暂时显示为 home.php,但一旦我保存并关闭并返回到博客页面,它就会恢复为索引。 php。

我找到了一个临时解决方案,但这是错误的解决方案。我复制了 home.php 并将其重新命名为 archive.php,现在它使用 archive.php 而不是索引。奇怪的是,它似乎根本不遵循层次结构。

我确实发现其他人也有同样的问题,他只是将他的 home.php 恢复为 index.php :

WordPress 帖子页面预览使用 index.php 而不是 home.php

我使用以下代码(在functions.php中)来显示页面正在使用哪个模板:

function show_template() {
   global $template;
   if ( current_user_can('administrator') ) {
      print_r("<div class='template-name' style='padding: 5px; border: 3px solid red; background-color: #FFFFFF; position: fixed; bottom: 0; left: 0;'>$template</div>");
   }
}   
Run Code Online (Sandbox Code Playgroud)

Col*_*erg 1

另一种解决方法是创建页面模板(page-blog.php)。在该文件中,确保将其添加到顶部,以便您可以在模板下拉列表中选择该文件:

<?php /* Template Name: Blog Page */ ?>
Run Code Online (Sandbox Code Playgroud)

将您的博客页面设置为该模板。然后在阅读部分中,如果您尚未设置或已重置,请将博客页面设置为您创建的博客页面。