我在WordPress网站上工作, 并且自定义帖子类型功能有问题。我创建了一个名为” cust_team”的帖子类型, 并且永久链接设置为帖子名称:
职务名称:http://example.com/mytheme/sample-post/
现在, 当我查看” http://example.com/mytheme/cust_team”页面时, 它向我显示了所有” cust_team”帖子的列表。但是, 当我查看http://example.com/mytheme/post或页面时, 它会重定向到404页面。我只想阻止自定义帖子类型列表页面, 因为它在SEO中创建重复内容问题。
这是我的注册信息类型数组:
$cpt_args['cust_team'] = array(
'labels' => array(
'name' => esc_html__('Team Member', 'mytheme'), 'singular_name' => esc_html__('Team Member', 'mytheme'), 'add_new' => esc_html__('Add Team Member', 'mytheme'), 'add_new_item' => esc_html__('Add Team Member', 'mytheme'), 'edit_item' => esc_html__('Edit Team Member', 'mytheme'), 'new_item' => esc_html__('New Team Member', 'mytheme'), 'all_items' => esc_html__( 'All Team Members', 'mytheme'), 'not_found' => esc_html__('No Team Member found', 'mytheme'), 'not_found_in_trash' => esc_html__('No Team Member found in Trash', 'mytheme'), 'menu_name' => esc_html__('Team Members', 'mytheme'), ), 'description' => 'Manage Team Content.', 'public' => true, 'publicly_queryable' => true, 'show_in_nav_menus' => true, 'supports' => array(
'title', 'thumbnail', 'editor', 'page-attributes', 'custom-fields'
), 'show_ui' => true, 'show_in_menu' => true, 'menu_position' => 5, 'has_archive' => true, 'menu_icon' => 'dashicons-admin-post', 'query_var' => true, 'rewrite' => '', 'capability_type' => 'post', 'map_meta_cap' => true, 'rewrite' => array('slug' => 'cust_team'), );
请告诉我我在做什么错。我想删除自定义帖子类型列表页面, 就像默认帖子类型”帖子”和”页面”一样。
#1
请设置’has_archive’=> false和’rewrite’=> false。
has_archive
(布尔值或字符串)(可选)启用帖子类型档案。默认情况下将使用$ post_type作为存档段。默认值:false注意:如果启用了重写, 将生成正确的重写规则。还可以使用rewrite更改使用的段。如果是字符串, 则应可翻译。
改写
(布尔值或数组)(可选)触发对此帖子类型的重写的处理。为防止重写, 请将其设置为false。默认值:true, 并将$ post_type用作slug
注意:
如果在插件中注册帖子类型, 请在激活和停用钩子中调用flush_rewrite_rules()(请参见下面的”在激活时刷新刷新”)。如果未使用flush_rewrite_rules(), 那么在自定义帖子类型显示正确的结构之前, 你将必须手动转到”设置”>”永久链接”并刷新你的永久链接结构。
希望对你有帮助。
#2
将以下设置为false:
'has_archive' => false
你可以在WordPress文档中阅读有关帖子类型的更多信息
评论前必须登录!
注册