繁体   English   中英

Wordpress没有使用home.php而是使用index.php作为帖子页面。

[英]Wordpress is not using home.php and instead index.php for posts page.

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

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

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

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

我找到了其他有同样问题的人,他只是将他的home.php恢复为index.php:

WordPress使用index.php而不是home.php发布页面PREVIEW

我使用以下代码(在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>");
   }
}   

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

<?php /* Template Name: Blog Page */ ?>

将您的博客页面设置为该模板。 然后在阅读部分,如果您还没有重置,请将博客页面设置为您创建的博客页面。

而不是home.php你应该使用front-page.php。 不幸的是,模板层次结构描述已经过时,并没有提到home.php不起作用(尽管它确实声明如果存在front-page.php,它将在index.php之前使用)。

您可以在主题根目录中创建名为page-home.php的文件

然后在里面包括

<?php /* Template Name: Home Page */ ?>

然后创建一个名为Home的页面并选择模板Home Page

然后转到设置 - >阅读 - >静态页面 - >首页=主页

我知道这已经有一年了,但我遇到了同样的问题并设法通过删除主题中的每个文件然后重新上传所有文件来修复它。

我不知道为什么会这样,但确实如此。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM