无法在WP V 4.6.1中将模板添加到设置为帖子页面的页面

时间:2018-08-29 作者:Sandeep C. Nath

enter image description here我正在尝试为我们的博客页面设置一个模板,该模板在WP Admin中设置为Posts页面。主题是Twenty Fifteen. 问题是Template selector 显示在下的所有其他页面Page attribute 菜单不仅仅出现在设置为的页面上Posts page. 这是与此版本或主题相关的错误吗?此网站中使用了多个模板,但此页面似乎没有显示任何模板。

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

您不能为“最新帖子”页面设置自定义模板。此设置将被忽略。用于此页面的模板由Template Hierarchy.

WordPress template hierarchy

因此,如果您从博客帖子索引页面的左侧开始,您将看到它使用home.php 对于其模板,如果存在,则使用index.php.

但是如果你的主页设置为显示最新的帖子,那么front-page.php 如果存在,将使用。

附言:你正在运行一个2年前的WordPress版本,应该尽快更新。

SO网友:Hideyasu.T

如果要使用模板文件,需要编写functions.php.

挂钩是theme_page_templates.
像这样


 * @param array $post_templates Array of page templates. Keys are filenames, values are translated names.
 * @return array Filtered array of page templates.
 */
function makewp_exclude_page_templates($post_templates)
{
  if (version_compare($GLOBALS[\'wp_version\'], \'4.7\', \'<\')) {
    unset($post_templates[\'templates/my-full-width-post-template.php\']);
  }
  return $post_templates[\'page-templates/blog.php\'];
}

add_filter(\'theme_page_templates\', \'makewp_exclude_page_templates\');

结束