问题描述
我有一个自定义的帖子类型,称为’job’,我在主题中有以下模板:
-
single-job.php(工作正常,按预期显示单个作业)
-
archives-job.php(无法识别?)
-
archives-current.php(也未被识别)
-
archives.php(无法识别?)
-
index.php(档案页面使用此页面)
这是我如何在 functions.php 中注册我的自定义内容类型:
add_action( 'init', 'create_jobs' );
function create_jobs() {
$labels = array(
'name' => _x('Jobs', 'post type general name'),
'singular_name' => _x('Job', 'post type singular name'),
'add_new' => _x('Add New', 'Job'),
'add_new_item' => __('Add New Job'),
'edit_item' => __('Edit Job'),
'new_item' => __('New Job'),
'view_item' => __('View Job'),
'search_items' => __('Search Jobs'),
'not_found' => __('No Jobs found'),
'not_found_in_trash' => __('No Jobs found in Trash'),
'parent_item_colon' => ''
);
$supports = array('title', 'editor', 'custom-fields', 'revisions', 'excerpt');
register_post_type( 'Job',
array(
'labels' => $labels,
'public' => true,
'has_archive' => 'current',
'supports' => $supports
)
);
}
当我转到 http://mywebsite/wordpress/current/的 URL 时,它将按预期的方式显示所有的作业,但是它不使用任何一个归档模板,而是使用 index.php 。
我对 wordpress 文档的理解是,它会寻找档案 – (专门的邮件类型名称的档案).php,然后是档案 – (post 类型).php,然后是 archives.php,然后是 index.php … 但它只是直接到 index.php?
我没有访问固定链接设置页面,点击保存来刷新所有内容,所以我没有得到 404’s, it’s 只是不输出到正确的模板… 我的名字不正确吗?当我创建我的自定义帖子类型时,是否有注册设置?
最佳解决思路
尝试'has_archive' => 'true';
并进行固定链接重置测试前!它应该是单数 archive-job.php 而不是 archives-job.php
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。