WordPress 3.9未使用自定义模板

时间:2014-05-22 作者:Scott

我将Wordpress从3.8.1升级到3.9.1。我正在使用magic-fields-2插件来定制数据,我创建了一个自定义帖子类型和一个自定义模板来显示该类型的单个帖子。更新前一切都很好。更新后,此类型的所有帖子都使用索引。php在我的主题目录中。

我尝试过创建一个帖子。php和帖子仍然使用索引。我将模板复制到一个新文件中,向该文件添加了模板标记,并为帖子选择了自定义模板,该帖子使用索引呈现。php。

我在谷歌上搜索了一个多小时,一点运气都没有。

感谢您的帮助或建议。

--编辑1--

这个主题是我自己定制的。它不是很复杂,只是一些自定义css和一些自定义模板。我在3.6中创建了主题。从那以后,它没有发生显著的变化。

在3.9.1之前,single Post使用的模板是single Suite。php(suites是自定义的post类型)。它仍然存在,但被忽视了。我把那个文件复制到了一个帖子上。php应该是模板层次结构中的下一个选择,但该文件也没有被使用。我又复制了同一个模板文件,并向其中添加了一个模板声明。我编辑了3篇不同的帖子,并选择了这个模板文件作为自定义模板(它在模板下拉列表中),发布并查看了它们。所有3人仍在使用索引。php作为他们的模板。最后,我从自定义模板文件中取出了除模板声明和h3标记之外的所有内容,以确保模板中没有会导致问题的错误(我的错误日志是干净的,但我只是很小心)。它仍然不会使用这个主题。

--编辑2--

我正在使用magic-fields-2插件。这是我唯一的插件。如果我禁用该插件,那么我的自定义帖子类型就会消失,与该自定义帖子类型关联的所有帖子都会消失。这些是我试图展示的帖子。我很欣赏这些问题,希望我提供了足够的信息来定义问题。

3 个回复
SO网友:user2569737

因为我没有你的主题,所以我找不到导致这个问题的原因,但现在这肯定能解决你的问题

创造content-{post_type}.php 归档并添加自定义帖子。

在索引中。php在上面添加以下代码<?php get_template_part( \'templates/content\', \'format\'); ?>

<?php if(!in_array(get_post_type(), array(\'post\', \'page\', \'attachment\', \'nav_menu_item\', \'revision\'))) ?>
<?php get_template_part( \'content\', get_post_type()); ?>
或者,如果您只有自定义帖子类型,请创建content-{custom-post-type-slug}.php 模板文件,并将其索引。php内部循环

<?php 
if(get_post_type() == \'{custom-post-type-slug}\') :
get_template_part( \'content\', {custom-post-type-slug}; 
else :
get_template_part( \'content\', \'format\'); 
endif; ?>
注意:在找到真正好的解决方案或默认模板层次结构不起作用之前,这只是暂时的。

编辑:安装调试栏插件,我想你会找到导致这个插件出现问题的原因。

SO网友:SLPh

在从3.8升级到3.9.1后,我遇到了类似的情况,我通过管理部分重新提交permalink设置来解决它。尝试再次应用或更改它们。希望它也能帮助你。

SO网友:Ravi Patel

复制单个。php并使用single{{yourposttypename}}重命名。php

就像我的post type name=“staticblock”一样,我的文件名用于single post single staticblock。php

查看更多信息enter image description here

结束

相关推荐

Custom post types templates

我已经注册了一个名为“Services”的自定义帖子类型,但当我给这篇帖子提供模板“single Services.php”时,它不接受这个,而是选择了“homepage.php”模板,你能告诉我这个问题吗?它也没有使用“archive services.php”模板,而是使用blog模板(index.php)使现代化代码如下:add_action(\'init\', \'services_register\'); function services_register() { $