wordpress设置固定链接后,去掉Category的解决办法

        最近这几天博客改版,把主题还有分类目录等都重新更改了一下,但是发现了一个问题,就是当使用了wordpress自带的固定链接把URl伪静态规范化之后,发现点击首页导航的分类目录之后,发现地址多了一级,多了一个Category 的层次,比如我这个博客,在没有处理掉之后,网络营销分类的地址为:www.1798seo.com/Category /wl,可以发现非常没有必要,一方面URL层次越深不利于搜索引擎的抓取,也影响用户体验,看着不舒服,所以我想着该如何去解决掉这个可恶的category,下面给大家介绍几种方法吧,大家选择性的使用吧…….

一、修改固定链接设置,去掉分类链接前缀category

        登录你的Wordpress后台,打开固定链接/永久链接设置项。在“可选设置”里的“分类地址前缀”里输入半角字符: “.”;保存即可去掉分类前缀category。

优点:设置简单,老少皆宜。适用于初建成的博客,或刚打算使用固定链接 /永久链接的博客。用不着修改代码,升级之时没有顾虑;用不着插件,不会增加运行负担。

缺点:原链接无法打开,出现404错误。被搜索引擎收录良好,或分类链接有较多外链链入的博客,可要万分小心了。不要因为操作简单、省时省力而损失了大量外链及权重。

评论:不好用,category是去掉了,404又来了,不建议使用

二、修改Wordpress函数,去掉分类前缀category

          对于 wordpress 中的各类问题,几乎都能找到插件解决,这个问题也不例外。但是很大一部分 wper 患有严重的代码控,但凡修改代码可以达到的效果绝不用插件代替,即便后者更为简单。所以在这里介绍一个非插件的方法:

1、Wordpress3.2之前版本

在目录 wp-includes/category-template.php 文件中搜索:

$catlink = $wp_rewrite->get_category_permastruct();

在下面添加:

$catlink = str_replace('/category', "", $catlink);

保存即可。

 

2、Wordpress3.2版本

在目录 wp-includes/category-template.php 文件中搜索:

function get_category_link( $category )

在最后的

return $category;

之前加入

$category = str_replace('/category', "", $category);
优点:仅加入一段代码,性能影响忽略不计。适用于对代码稍熟悉的博客。

缺点:修改代码,博客升级还要修改。且原地址仍可以访问。或会造成谷歌网站管理员工具里提到的,重复的标题。

三、借助Wordpress插件,去掉分类前缀category

1、WP No Category Base:作者iDope,是为去除固定链接中分类链接里的category而开发出来的一款wordpress插件,被下载近5万次。安装启用此插件后,对原来的分类地址做了301跳转,对SEO优化有好处,把降权风险降到最低。             点击下载

2、No category parents:作者milardovich,上面插件的升级版,不仅能去掉分类链接的前缀category,还能去掉父分类 parent-category。例如能把“/category/parent-category/my-category/”换成“/my-category/”形式。        点击下载

 

优点:安装简单,老少皆宜。无论是初建成的博客,还是正打算使用固定链接 /永久链接的博客,还是被搜索引擎收录良好的博客。用不着修改代码,升级之时没有顾虑。使用 301跳转,把原链接进行跳转。最大程度防止搜索引擎降权,防止原链接打不开。

不足:插件或许会造成空间负担。这里不说是缺点,就是因为,造成的“空间负担”微乎其微,不应该是缺点。比较在意的就不用,无所谓推荐使用。

           方法是在网上找的,我自己也是在网上看到这些方法之后,然后才解决的,但是通过我自己的测试,使用第一种方法,直接在后台的固定链接那里,在分类前缀那里输入:“.”,但是后面出现一个更加奇怪的现象,就是通过这种方法category是去掉了,但是我发现在前台点击任何的分类都是显示同样的文章,全是显示全站的文章,没有按开始分类的文章分类,所以我放弃了这种方法,如果不出现这个错误,我想修改固定链接这个方法是最简单的了,直接在分类前缀里加上“.”就OK了。再看第三种方法修改函数,因为我本身啥都不懂代码,所以这种方法就直接排除了,最后我选择了用插件的方法来试试,最后完美的成功了,也不需要任何的设置,把插件装上之后,直接启用,然后再到前台去看看,是不是非常完美的解决了呢?嘿嘿……所以,如果你和我一样不懂代码,而且用固定链接这种方法还是无法去掉的话,那就选择用插件的方法来解决吧,虽然会占一点资源,但还是很方便的,可以忽略不计的。

OK,今天因为自己刚刚操作实践过,就写下来了,希望大家以后有遇到这样的情况可以在这里找到方法解决!

评论

还没有任何评论,你来说两句吧

你必须 登录 才能发表评论.