url中的wordpress自定义帖子类型类别slug

Posted

技术标签:

【中文标题】url中的wordpress自定义帖子类型类别slug【英文标题】:wordpress custom post type category slug in url 【发布时间】:2017-02-28 22:44:29 【问题描述】:

我有两个不同类别的自定义帖子类型(投资组合),然后我有 2 个页面显示来自这两个类别的帖子。

我调用页面时的 url 类似于 mysite.com/pagename,其中 pagename 与投资组合类别的名称相同。

我的问题是当我进入单个投资组合时,url 变为 mysite.com/portfolio/portfolio-name

有没有办法在 url 中显示投资组合类别? 它应该类似于 mysite.com/portfolio-category/portfolio-name

提前致谢。

【问题讨论】:

对于任何登陆这里的人,这个问题涵盖了相同的主题,并包括一个有效的答案:***.com/questions/23698827/… 【参考方案1】:

将您的分类注册如下。

这里的“投资组合”是您的“自定义帖子类型”并且 “portfolio-category”是您的“portfolio category”。

添加此挂钩 URL 后,将显示“portfolio-category”。如您所愿。

试试这对你有帮助。

/* add action hook in function.php */
add_action( 'init', 'custom_function_toadd_taxonomyurl',0);
function custom_function_toadd_taxonomyurl() 

register_taxonomy( 'portfolio-category', array( 'portfolio' ), array(
        'hierarchical' => true,
        'label' => 'Portfolio Categories',
        'singular_name' => 'Portfolio Category',
        'show_ui' => true,
        'query_var' => 'portfolio-category',
        'rewrite' => array( 'slug' => 'portfolio-category')
    ));


【讨论】:

【参考方案2】:

是的,其中任何一个都可以在“设置”>“永久链接”下进行配置。查看永久链接页面了解其他可能性。

有一点需要注意,建议在永久链接的开头添加一个数字,以减少 WordPress 为解析所有 URL 而必须生成的重写规则的数量。

【讨论】:

在永久链接中,我选择了“sample-post/”,这对于网站中的所有其他页面来说都是一个不错的选择,如果我改变它,我可能会(不太确定)在那里解决我会在其他地方遇到问题。 我需要一个规则,仅在涉及自定义帖子类型时覆盖默认帖子类型并将其替换为相关类别 你有没有提到这个网址codex.wordpress.org/Using_Permalinks 将我最多可以实现的永久链接设置更改为: mysite.com/portfolio/category/post-name,我想删除“投资组合”,但您可以看到这是不允许的:s22.postimg.org/obz2h5bun/…

以上是关于url中的wordpress自定义帖子类型类别slug的主要内容,如果未能解决你的问题,请参考以下文章

从 Wordpress 中自定义帖子类型的类别中获取 ACF 文本字段值

Wordpress 自定义帖子类型类别

移动自定义帖子类型的wordpress帖子及其类别以及类别的子父关系

php Wordpress - 列出所有(自定义帖子类型)帖子类别

在单个自定义帖子类型中显示所选类别(Wordpress)

WordPress > 从自定义帖子类型获取自定义分类