永发信息网

如何去掉wordpress中的category

答案:2  悬赏:0  手机版
解决时间 2021-12-29 03:15
如何去掉wordpress中的category
最佳答案
修改固定链接设置,去掉分类链接前缀category
  登录你的Wordpress后台,打开固定链接/永久链接设置项。在“可选设置”里的“分类地址前缀”里输入半角字符: “.”;保存即可去掉分类前缀category。
  优点:设置简单,老少皆宜。适用于初建成的博客,或刚打算使用固定链接 /永久链接的博客。用不着修改代码,升级之时没有顾虑;用不着插件,不会增加运行负担。
  缺点:原链接无法打开,出现404错误。被搜索引擎收录良好,或分类链接有较多外链链入的博客,可要万分小心了。不要因为操作简单、省时省力而损失了大量外链及权重。
  开启重写后,这样设置会导致分类和标签下找不到对应文章,所以最好还是只将其缩短。

  借助Wordpress插件,去掉分类前缀category
  1、WP No Category Base:作者iDope,是为去除固定链接中分类链接里的category而开发出来的一款wordpress插件,被下载近5万次。安装启用此插件后,对原来的分类地址做了301跳转,对SEO优化有好处,把降权风险降到最低。
  下载地址:WordPress官方下载;作者iDope博客下载
  2、No category parents:作者milardovich,上面插件的升级版,不仅能去掉分类链接的前缀category,还能去掉父分类 parent-category。例如能把“/category/parent-category/my-category/”换成“/my-category/”形式。
  下载地址:WordPress官方下载;作者milardovich博客下载
  优点:安装简单,老少皆宜。无论是初建成的博客,还是正打算使用固定链接 /永久链接的博客,还是被搜索引擎收录良好的博客。用不着修改代码,升级之时没有顾虑。使用 301跳转,把原链接进行跳转。最大程度防止搜索引擎降权,防止原链接打不开。
  不足:插件或许会造成空间负担。这里不说是缺点,就是因为,造成的“空间负担”微乎其微,不应该是缺点。比较在意的就不用,无所谓推荐使用。

  修改Wordpress函数,去掉分类前缀category
  1、找到你Wordpress博客wp-includes文件夹下的category-template.php。
  2、打开此文件,搜索(get_category_link()函数里)的以下代码:
  $catlink = $wp_rewrite->get_category_permastruct();
  在其后,另起一行加入:
  $catlink = str_replace('/category' , '' , $catlink);代码作用是,使用字符串替换函数,把获取分类链接函数的分类链接里的/category替换掉。达到去掉分类链接前缀/category的目的。
  3、保存上传到服务器即可。
  优点:仅加入一段代码,性能影响忽略不计。适用于对代码稍熟悉的博客。
  缺点:修改代码,博客升级还要修改。且原地址仍可以访问。或会造成谷歌网站管理员工具里提到的,重复的标题。
全部回答
将下面代码丢进 (functions.php)的结束前面?>就可以了。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 //去除分类标志代码 add_action( 'load-themes.php', 'no_category_base_refresh_rules'); add_action('created_category', 'no_category_base_refresh_rules'); add_action('edited_category', 'no_category_base_refresh_rules'); add_action('delete_category', 'no_category_base_refresh_rules'); function no_category_base_refresh_rules() { global $wp_rewrite; $wp_rewrite -> flush_rules(); } // register_deactivation_hook(__FILE__, 'no_category_base_deactivate'); // function no_category_base_deactivate() { // remove_filter('category_rewrite_rules', 'no_category_base_rewrite_rules'); // // We don't want to insert our custom rules again // no_category_base_refresh_rules(); // } // Remove category base add_action('init', 'no_category_base_permastruct'); function no_category_base_permastruct() { global $wp_rewrite, $wp_version; if (version_compare($wp_version, '3.4', '<')) { // For pre-3.4 support $wp_rewrite -> extra_permastructs['category'][0] = '%category%'; } else { $wp_rewrite -> extra_permastructs['category']['struct'] = '%category%'; } } // Add our custom category rewrite rules add_filter('category_rewrite_rules', 'no_category_base_rewrite_rules'); function no_category_base_rewrite_rules($category_rewrite) { //var_dump($category_rewrite); // For Debugging $category_rewrite = array(); $categories = get_categories(array('hide_empty' => false)); foreach ($categories as $category) { $category_nicename = $category -> slug; if ($category -> parent == $category -> cat_ID)// recursive recursion $category -> parent = 0; elseif ($category -> parent != 0) $category_nicename = get_category_parents($category -> parent, false, '/', true) . $category_nicename; $category_rewrite['(' . $category_nicename . ')/(?:feed/)?(feed|rdf|rss|rss2|atom)/?$'] = 'index.php?category_name=$matches[1]&feed=$matches[2]'; $category_rewrite['(' . $category_nicename . ')/page/?([0-9]{1,})/?$'] = 'index.php?category_name=$matches[1]&paged=$matches[2]'; $category_rewrite['(' . $category_nicename . ')/?$'] = 'index.php?category_name=$matches[1]'; } // Redirect support from Old Category Base global $wp_rewrite; $old_category_base = get_option('category_base') ? get_option('category_base') : 'category'; $old_category_base = trim($old_category_base, '/'); $category_rewrite[$old_category_base . '/(.*)$'] = 'index.php?category_redirect=$matches[1]'; //var_dump($category_rewrite); // For Debugging return $category_rewrite; } // Add 'category_redirect' query variable add_filter('query_vars', 'no_category_base_query_vars'); function no_category_base_query_vars($public_query_vars) { $public_query_vars[] = 'category_redirect'; return $public_query_vars; } // Redirect if 'category_redirect' is set add_filter('request', 'no_category_base_request'); function no_category_base_request($query_vars) { //print_r($query_vars); // For Debugging if (isset($query_vars['category_redirect'])) { $catlink = trailingslashit(get_option('home')) . user_trailingslashit($query_vars['category_redirect'], 'category'); status_header(301); header("Location: $catlink"); exit(); } return $query_vars; } //去除分类标志代码结束
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
怎么把图片底色变透明
日本地震造成的福岛核电站事故正在演变成一场
双笙的拼音是什么
为“先小家后大家”论题做开篇立论及结论
NB里面的RU是什么意思
股市里的空方和多方指的是什么意思
电饼铛烤鱼的做法,电饼铛烤鱼怎么做好吃,电
男女朋友如果意见不一致时怎么办?大神们帮帮
— you open the window, please? —Yes, I c
水利局和计生委哪个权利大
每月1号发工资1号星期天银行上班吗
什么是纳米热,纳米热的原因是什么
换了手机,之前备份在sd卡中的数据,新手机中
野比大雄的生化危机疯狂战争怎么进随身商店(
对方开通了移动小秘书,进入对方的语音信箱留
推荐资讯
茅盾文学奖为什么88-98年之间停顿了10年?
In?the?diagram,the?equation?of?RQis?y=2x-
消费者总是想用同样多的货币买到更多的商品。
·夜以继日,废寝忘食,不计其数连成一段话
直径为50mm的黄铜棒长度是30厘米的重量是多少
东方财富网怎么打不开
我的新迈腾1.8t在手动换挡下,为什么向后拨不
怎么高考志愿找回密码?
单选题你认为下列数据中最接近事实的是A.某同
装修新房时将防盗门往外移了会受什么处理
羊蛋就吃个皮吗,里面的东西能吃吗?
川崎zx6r09款和10款一样吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?