本文介绍Permalinks Manager如何实现重构自定义内容固定链接结构, 当你使用ACF自定义产品内容类型和分类法的时候,链接重构将会非常有用。它不需要你对核心代码做任何编辑和修改,简单的操作步骤就可以实现产品链接以及产品分类的固定链接修改。

WordPress 默认的固定链接(Permalinks)结构对大多数博客网站够用,但它的设置无法覆盖自定义内容类型和分类法的固定链接结构,你只能在自定义内容类型和分类法的URL设置中对相应的固定链接结构做有限的调整,如果你需要进一步的优化和重构固定链接,你就需要用到 Permalinks Manager 这样的插件来实现。

目前我测试的几款自定义内容类型管理插件(比如ACFCPT UI、Jet Engine等)都会默认使用自定义内容和分类法的关键键作为固定链接的前缀,并且无法直接删除。

Permalinks Manager插件介绍

Permalinks Manager是一款强大的固定链接管理工具,它可以帮助你充分控制网站每一个页面的URL设置。包括根据需要调整每个单独的 URL,点击几下即可重新排列固定链接结构,更改 URL 自动重定向,改进的 WooCommerce URL 结构动态向 URL 添加自定义字段,翻译 WordPress 永久链接(和WPML 和 Polylang兼容)等等。

Permalinks Manager有免费版和付费版本,以下是免费和付费版功能对照表格:

功能 / 项目Lite(免费版)Pro(付费版)
编辑文章 / 页面 / CPT 的 URL✅ 支持
批量 / 模板 URL 编辑✅(增强)
翻译 / 多语言 URL 支持
删除父级 slug / 简化层级
自动重定向旧 URL → 新 URL
编辑分类 / 标签 / 自定义分类法(Taxonomy)URL❌ 不支持✅ 支持
WooCommerce 产品 / 分类 / 标签 URL 重写❌ / 有限支持✅ 完整支持
在 URL 中引用自定义字段
自定义额外重定向 / 别名 / 指向外部 URL
支持重复 slug / 跨内容类型共享 slug
批量 / 模板编辑分类 / 术语 URL
官方客户支持 / 更新免费版本更新包括支持与更新服务

免费版本支持删除产品内容类型的固定链接前缀,并且添加分类法层级结构到产品固定链接中去,如果你需要调整分类法的固定链接结构,则需要高级版本,以下我会在教程中标记需要高级版的操作步骤。

如果你需要购买Permalinks Manager Pro可以访问我的产品清单联系我购买正版终身授权(可在线更新)。

免费版直接在网站后台的插件库中搜索安装激活即可。

如何使用Permalinks Manager重构自定义内容固定链接结构?

删除自定义内容类型固定链接前缀

当你使用自定义内容类型创建产品内容类型的时候,默认的产品固定链接的前缀/product/,他无法删除只能修改。

🌰举一个例子:

当你使用ACF自定义内容类型创建了产品内容类型和产品分类,那么默认情况下它们的固定链接结构如下:

产品固定链接:/product/sample-product/

你希望将链接简化为:

产品固定链接:/sample-product/

进入Permalinks Manager插件的Permastructures标签卡,找到Product选项,将栏目中前面的/product删除,保留/%my_product%

自定义内容类型固定链接中添加分类法的分层结构

如果你希望可以将自定义产品内容类型的产品分类的层级结构都加到产品的固定链接结构中。可以使用Permalinks Manager进一步调整。

默认情况下,自定义产品内容类型的产品固定链接结构中是不包含分类法的,我之前写了《2步解决acf自定义产品固定链接中没有分类的问题》,需要修改核心代码。

🌰举一个例子:

产品固定链接:/product/sample-product/

希望优化链接可以提现产品分类和对应的层级结构:

产品固定链接:/product-category-1/product-category-child-1/sample-product/

在Permalinks Manager插件的Permastructures标签卡下面的Product选项后面点击 Available tags按钮。

在弹出框中点击Taxonemy中的产品分类的动态标签,复制这个标签内容。

关闭弹出框,将复制的动态标签内容粘贴再产品选项框中,注意顺序和结构。

删除自定义分类法固定链接前缀(需要Permalinks Manager Pro)

修改自定义分类法的固定链接前缀需要用到Permalinks Manager Pro。

产品分类固定链接:/product-category/ sample-product-category/

你希望将链接简化为:

产品分类固定链接:/ sample-product-category/

在Permalink Manager插件的Permastructures标签卡下面,找到产品分类选项,删除产品分类的前缀内容。

删除产品分类前缀 - Permalinks Manager重构自定义内容固定链接结构 - NUTSWP

以上设置完成之后,点击底部的 Save Permastructures按钮,保存设置。然后还需要重置固定连接才会生效。

重置固定链接

打开Permalink Manager的Tools标签卡,点击进入【Regenerate/Reset】页面,分别充值一下产品内容类型固定链接和产品分类的固定链接。

1)重置Post Types固定链接

Mode选择:regenerate custom permalinks

Select content Type选择Post Type(Post Type代表具体的内容包含:页面、博客、产品等)

Select post types选择Product(这里不需要都选择,只要选择你修改的内容类型去更新就好)

Select post statuses选择所有的(这里是选择Post的状态,避免出现遗漏,建议是都勾选上)

Select ID默认即可,不需要填写

Preview Mode默认即可,不需要勾选

最后点击【regenerate】按钮,进行重置。重置完成你可以看到处理结果:

image - Permalinks Manager重构自定义内容固定链接结构 - NUTSWP

2)重置Taxonemies固定链接

Mode选择:regenerate custom permalinks

Select content Type选择Taxonemies(Taxonemies代表分类法,包括博客的分类,标签,产品的分类、标签等)

Select Taxonemies选择Product Category(这里不需要都选择,只要选择你修改的产品分类更新)

Select ID默认即可,不需要填写

Preview Mode默认即可,不需要勾选

最后点击【regenerate】按钮,进行重置。重置完成你可以看到处理结果:

image 1 - Permalinks Manager重构自定义内容固定链接结构 - NUTSWP

总结

图一是产品固定链接修改之前的链接结构,图二是修改之后的,可以看到产品链接中包含了分类结构。如果你的分类层级比较多,会导致链接过长,不利于SEO,对于产品来说其实更加扁平化的链接结构更好,所以你可以直接删除前缀即可,不需要增加分类结构在产品链接结构中,然后在页面中用面包屑来体现产品的分类路径。

下面这张图片是产品分类页面在更新固定链接之后链接结构,修改这个前缀需要用到Permalink Manager Pro。

产品分类页面更新之后的链接结构 - Permalinks Manager重构自定义内容固定链接结构 - NUTSWP

Permalinks Manager还可以实现在某一个产品编辑或者某一个产品分类编辑的Custom URL选项中直接修改对应页面的URL。

Permalinks Manager还可以实现在某一个产品编辑或者某一个产品分类编辑的Custom URL选项中直接修改对应页面的URL - Permalinks Manager重构自定义内容固定链接结构 - NUTSWP