WordPress 上给文章分类和贴标签基本上是大家必做的优化了。使用比较漂亮的固定链接地址形式的话,分类和标签页面 URL 里会有 /category/
和 /tag/
字符串。标签还好点儿,短短 3 个字符。可是分类的 URL 就不是那么漂亮了。所以很多人都希望能够去掉分类链接里的 category 字样。有利有弊,需要仔细权衡。
上次给朋友做网站的时候就有这样的需求。实现起来倒是不难,使用 WordPress 的 hook 和 filter 在各种用到分类的链接的地方改写链接地址规则即可。幸好 mines.io 已经给我们分享了这么个插件 WP No Category Base 来解决问题。
插件使用也很简单:直接在 WordPress 管理后台插件页面搜索并在线安装,或者到 WordPress 插件目录去下载该插件,解压并上传到服务器,然后再启用该插件就可以了。不需要特别设置。
该插件可以:
- 实现将 WordPress 分类链接地址
myblog.com/category/my-category/
改写为myblog.com/category/my-category/my-post/
- 从而让网站链接看起来更美,比如
myblog.com/category/my-category/my-post/
变成myblog.com/my-category/my-post/
- 简单、直接
- 无需设置
- 无需修改 WordPress 源代码
- 与网站地图(sitemap)插件兼容
- 兼容多站点模式
- 支持多层次子分类
- 支持多语言版本
- 自动将旧的分类固定链接 301 重定向到新的链接形式
不过我个人觉得:
- 如果是新站用这个方法很不错;
- 如果是商业网站(比如小型公司展示网站),推荐用这个插件;
- 用的时候要特别注意,去掉分类链接里的 category 那一段之后,分类链接和静态页面链接就看不出来区别了(这也是为什么 WordPress 默认要给分类和标签都加上一个基础(Base)地址的原因)。这个时候就要注意静态页面和分类的别名(slug)不要重复,不然 WordPress 就不知道该显示静态页面还是显示分类了;
- 对于个人博客而言实际上没有必要这么大费周章。虽然 301 重定向会将原地址的权重传递给新地址,可这是需要时间的。Google 对这个执行得较好,百度似乎不怎么喜欢;
- 如果 WordPress 更新了新功能,或者采取了新的处理方式,这个插件也需要及时更新,不然新功能或者新方式产生的分类链接可能就回到老样子了。这当然会带来困扰。幸好插件作者更新还算勤快。在 WordPress 3.4 发布之后于 7 月 2 好就更新了该插件。
上次给朋友做商业网站,感觉与个人博客差别很大,用到了几个个人博客不太常用的插件(前 1、前 2),已经介绍完了。估计又要好久不会折腾 WordPress 了,可以消停一阵子了。©
本文发表于水景一页。永久链接:<https://cnzhx.net/blog/remove-category-in-url-of-wordpress/>。转载请保留此信息及相应链接。
去掉还不如直接在后台改个简短点的名字(原生)
嗯,重点不在长短,而在于有与没有。
比如你有个小的公司站,其实没多少东西可以展示,但是为了显得有内容,需要搞点儿公司新闻,行业新闻之类的东西。我们通常是创建两个分类来显示不同分类的新闻。可是在
/news/company
和/news/industry
前面弄个/category
或者/cat
总有点儿四不像的感觉。