删除自定义帖子类型的URL结构

时间:2013-11-02 21:29:38

标签: php wordpress url structure custom-post-type

我想知道是否可以删除自定义帖子类型的网址结构。例如,我有2种自定义帖子类型:组合和滑块。

我想保留投资组合帖子类型的网址结构,如:mysite.com/portfolio/item-1等。

但我不想要滑块帖子的URL结构,因为滑块只会显示在主页上,我不希望访问者能够通过访问mysite.com/slider/slide-1来访问它。有可能吗?

提前致谢:)

Wordpress论坛发帖:http://wordpress.org/support/topic/no-url-structure-for-custom-post-type-1?replies=1

2 个答案:

答案 0 :(得分:3)

当您注册新的自定义帖子时,您正在使用register post type,对吧?有选项

'rewrite'            => false,
'query_var'          => false,
'publicly_queryable' => false,
'public'             => false

WordPress文档后:

  

rewrite 触发此帖子类型的重写处理。要防止重写,请设置为false。

     

query_var 'false' - 禁用query_var密钥使用。无法在/?{query_var} = {single_post_slug}

中加载帖子类型      

publicly_queryable 是否可以作为parse_request()的一部分在前端执行查询。

     

public 'false' - 发布类型不应公开使用,通常在wp-admin和前端不可用,除非在其他地方明确规划。

现在转到永久链接设置,不做任何更改 - 保存更改。它将重建你的“路由”。

此类设置会从前端禁用您的自定义帖子。

答案 1 :(得分:0)

我有类似的问题,就我而言,我有如下这样的自定义帖子类型:

mypage.com/type

并且在内部有很多帖子,因此为我生成的页面当然如下:

mypage.com/type/page1
mypage.com/type/page2
...

但是,我知道将来会在那建立网站,所以我很简单地在此自定义帖子类型网页中进行了重定向。因此,在single-type.php中我添加了:

<script>
    window.location.href='www.mypage.com/404';
</script>

因此,这只是将人们重定向到404页面。几周后,当我想打开这些页面时,我只是删除了这段代码。

这只是一个临时解决方法,但我希望它可以对某人有所帮助。