麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > CMS > Wordpress > 正文

Wordpress如何將列表URL結(jié)尾添加”/” 如何自定義類型的URL的固

2024-09-07 00:52:17
字體:
供稿:網(wǎng)友

Wordpress如何將列表URL結(jié)尾添加”/” 如何自定義類型的URL的固定鏈接

我們來分享兩篇關(guān)于Wordpress的URL優(yōu)化技巧的教程,將分類、標(biāo)簽(Tag)等列表URL結(jié)尾添加”/”斜線呢,添加自定義類型的URL的固定鏈接。

Wordpress如何將分類、標(biāo)簽(Tag)等列表URL結(jié)尾添加”/”斜線呢?

WordPress強(qiáng)大之處就是在于,我們能想到的已經(jīng)實(shí)現(xiàn)了,只是我們不知道而已。

網(wǎng)上有很多解決方案,基本歸類為:

1. 通過Rewrite Rule 301跳轉(zhuǎn)實(shí)現(xiàn)(如果是已經(jīng)被收錄的URL可以的,但剛開始時(shí)不建議使用)

2. 通過修改wp-includes/canonical.php實(shí)現(xiàn)(升級(jí)時(shí)會(huì)被覆蓋,不建議)

3. 通過插件來實(shí)現(xiàn)

下面就說一下插件方法:

插件 Permalink Trailing Slash Fixer 已經(jīng)實(shí)現(xiàn)這個(gè)功能。

下載后查看代碼,你會(huì)發(fā)現(xiàn)只有幾行而已,而且內(nèi)部調(diào)用的是Wordpress自帶的方法實(shí)現(xiàn)的,并且不會(huì)出現(xiàn)301跳轉(zhuǎn),個(gè)人認(rèn)為非常理想的解決方案.

代碼如下:

  1. /** 
  2.  * Public staff only. 
  3.  */ 
  4. if (is_admin()) return
  5.  
  6. $permalink_structure = get_option('permalink_structure'); 
  7. if (!$permalink_structure || '/' === substr($permalink_structure, -1)) 
  8.     return
  9.  
  10. add_filter('user_trailingslashit''ppm_fixe_trailingslash', 10, 2); 
  11.  
  12. /** 
  13.  * Appends a trailing slash if it's missing in the permalink structure. 
  14.  * 
  15.  * Conditionally adds a trailing slash if the url type is not "single". 
  16.  * 
  17.  * @param string $url A URL with or without a trailing slash. 
  18.  * @param string $type The type of URL being considered (e.g. single, category, etc). 
  19.  * @return string The URL with the trailing slash fixed. 
  20.  */ 
  21. function ppm_fixe_trailingslash($url$type
  22.     if ('single' === $type
  23.         return $url
  24.  
  25.     return trailingslashit($url); 
  26.  
  27. /** 
  28.  * Public staff only. 
  29.  */ 
  30. if (is_admin()) return
  31.  
  32. $permalink_structure = get_option('permalink_structure'); 
  33. if (!$permalink_structure || '/' === substr($permalink_structure, -1)) 
  34.     return
  35.  
  36. add_filter('user_trailingslashit''ppm_fixe_trailingslash', 10, 2); 
  37.  
  38. /** 
  39.  * Appends a trailing slash if it's missing in the permalink structure. 
  40.  * 
  41.  * Conditionally adds a trailing slash if the url type is not "single". 
  42.  * 
  43.  * @param string $url A URL with or without a trailing slash. 
  44.  * @param string $type The type of URL being considered (e.g. single, category, etc). 
  45.  * @return string The URL with the trailing slash fixed. 
  46.  */ 
  47. function ppm_fixe_trailingslash($url$type
  48. //Vevb.com 
  49.     if ('single' === $type
  50.         return $url
  51.  
  52.     return trailingslashit($url); 

是不是很簡潔…..

如果你是使用的多站點(diǎn),而之前的站點(diǎn)SEO還不錯(cuò),現(xiàn)在準(zhǔn)備添加一新站點(diǎn)的話,以防相互有影響建議將上面代碼微調(diào)后加入到 模板目錄functoins.php中,或是使用插件,只在新的站點(diǎn)開戶插件功能,也是一樣的:

  1. if (!is_admin()) { 
  2.     function ppm_fixe_trailingslash($url$type
  3.     { 
  4.         $permalink_structure = get_option('permalink_structure'); 
  5.         if (!$permalink_structure || '/' === substr($permalink_structure, -1)) 
  6.         { 
  7.         return
  8.         } 
  9.         if ('single' === $type || 'page' === $type
  10.         { 
  11.         return $url
  12.         } 
  13.  
  14.         return trailingslashit($url); 
  15.     } 
  16.     add_filter('user_trailingslashit''ppm_fixe_trailingslash', 10, 2); 
  17.      
  18.  if (!is_admin()) { 
  19.     function ppm_fixe_trailingslash($url$type
  20.     { 
  21.         $permalink_structure = get_option('permalink_structure'); 
  22.         if (!$permalink_structure || '/' === substr($permalink_structure, -1)) 
  23.         { 
  24.         return
  25.         } 
  26.         if ('single' === $type || 'page' === $type
  27.         { 
  28.         return $url
  29.         } 
  30.  
  31.         return trailingslashit($url); 
  32.     } 
  33.     add_filter('user_trailingslashit''ppm_fixe_trailingslash', 10, 2); 

最后,最得要的是,讓新添回報(bào)URL Rules生效:進(jìn)入后臺(tái)?>Setting?>Permalinks刷新即可.

Wordpress如何添加自定義類型的URL的固定鏈接

由于業(yè)務(wù)需要,偶爾會(huì)添加一種頁面類型,而這種類型不存在于Wordpress已有的routers 固定鏈接中,那么就需要我們來添加一種自定義的URL固定鏈接.

比如:

我需要添加一種/health/A~Z/的URL規(guī)則,那么如何自定義呢?

大體實(shí)現(xiàn)如下:

1.固定鏈接URL定義為:/health/A/

2.實(shí)際URL為:index.php?category_name=&idx=

實(shí)際代碼如下:

# 找到模板目錄下面的functions.php 添加下面代碼:

  1. function add_query_vars($aVars) { 
  2.   $aVars[] = "idx";  
  3.   return $aVars
  4. // hook add_query_vars function into query_vars 
  5. add_filter('query_vars''add_query_vars'); 
  6.  
  7. function add_rewrite_rules($aRules) { 
  8.   $aNewRules = array('(health)/([^/]+)/?$' => 'index.php?category_name=$matches[1]&idx=$matches[2]'); 
  9.   $aRules = $aNewRules + $aRules
  10.   return $aRules
  11.  
  12. // hook add_rewrite_rules function into rewrite_rules_array 
  13. add_filter('rewrite_rules_array''add_rewrite_rules'); 
  14.  
  15. # 找到模板目錄下面的functions.php 添加下面代碼 
  16. function add_query_vars($aVars) { 
  17.   $aVars[] = "idx";  
  18.   return $aVars
  19. // hook add_query_vars function into query_vars 
  20. add_filter('query_vars''add_query_vars'); 
  21.  
  22. function add_rewrite_rules($aRules) { 
  23.   $aNewRules = array('(health)/([^/]+)/?$' => 'index.php?category_name=$matches[1]&idx=$matches[2]'); 
  24.   $aRules = $aNewRules + $aRules
  25.   return $aRules
  26.  
  27. // hook add_rewrite_rules function into rewrite_rules_array 
  28. add_filter('rewrite_rules_array''add_rewrite_rules'); 

到這里已經(jīng)實(shí)現(xiàn)自定義URL規(guī)則的固定鏈接。

那么如何獲取URL中的參數(shù)呢?其實(shí)知道這是Wordpress自身的路由實(shí)現(xiàn)就好明白了,既然是WP的路由,那么我們就像別的框架一樣使用WP的獲取URL的參數(shù)的訪問就可以了.

在需要獲取idx參數(shù)值的寂寞中,如下代碼就可以得到了:

  1. #打印所有參數(shù) 
  2. var_dump($wp_query->query_vars); 
  3. #取得idx參數(shù)和值 
  4. $idx = get_query_var('idx'); 
  5.  
  6. #打印所有參數(shù) 
  7. var_dump($wp_query->query_vars); 
  8. #取得idx參數(shù)和值 
  9. $idx = get_query_var('idx');

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久毛片 | 日本爽快片100色毛片视频 | 国产老师做www爽爽爽视频 | 中国产一级毛片 | 亚洲成人在线免费观看 | 欧美日韩亚洲不卡 | 操网| 国产在线免 | 91久久夜色精品国产网站 | 色妞妞视频 | 欧美在线观看视频一区二区 | 久久手机在线视频 | 国产午夜精品久久久久久久蜜臀 | 国产资源在线免费观看 | 欧美久久一区 | 久久在线免费视频 | 欧美成人一区二区三区 | 欧美极品欧美精品欧美视频 | 亚洲成人精品久久 | 大学生a级毛片免费视频 | 国产精品美女久久久久久不卡 | 精品国产乱码久久久久久丨区2区 | 久久综合综合久久 | 奇米888一区二区三区 | 多男操一女视频 | 性生活香蕉视频 | 失禁高潮抽搐喷水h | 美女久久久久 | 亚洲成人免费视频在线 | 国产高清成人久久 | 久久国产中文字幕 | 久国久产久精永久网页 | 视频一区二区国产 | 极品一级片 | 久久欧美亚洲另类专区91大神 | 亚洲性生活视频 | 天天夜碰日日摸日日澡性色av | 天堂成人国产精品一区 | 国产精品剧情一区二区在线观看 | 国产精品自拍片 | 久久国产在线观看 |