我有一个名为integrations
的自定义帖子类型,我是这样注册的:
register_post_type(
'Integrations',
theme_build_post_args(
// $slug, $singular, $plural
'integrations', 'Integration', 'Integrations',
array(
'menu_position' => 20,
'has_archive' => true,
'public' => false,
'publicly_queryable' => false,
'rewrite' => array( 'slug' => false, 'with_front' => false ),
'supports' => array('title', 'revisions'),
'taxonomies' => array('categories'),
)
)
);
我不希望在注册上述帖子类型后创建一个页面,因为我希望创建一个位于/integrations
上的page
,这将是更多的定制。此外,我有位于此页面下的子页面,所以我希望它成为一个页面,这样我就可以将其作为parent
分配给子页面。因此,我添加了'publicly_queryable' => false
到上面。
现在,我已经创建了一个名为Integrations的page
,它位于/integrations
上,但在访问它时,它会重定向到主页。
我敢肯定这是因为'publicly_queryable' => false
,但是,删除它不会解决我的问题,因为鼻涕虫将存在的职位类型注册。
有什么办法吗?
1条答案
按热度按时间lp0sw83n1#
删除
'publicly_queryable' => false
,这将告诉wordpress不要让任何人访问该页面。尝试执行template_redirect操作,并检测页面是否为
integrations
:当有人访问
/integrations
时,它将在主题目录中查找page-integrations.php
文件。