天津11选5任四走势图:WordPress主題去除url中的category三種方法

作者: 魯智深 分類: wordpress 發布時間: 2013-01-28 14:58

改代碼實現去除url中的category

天津11选5中奖结果 www.ebzvaz.com.cn 注意以下三種方法只試用于Wordpress3.3.1版本之前(包括3.3.1)。

一.Wordpress3.2之前版本

WordPress 的文章分類網址默認顯示在 category 父目錄下,例如分類名為 wp ,分類鏈接樣式則為 //blog.com/category/wp。如果后臺設置的文章靜態鏈接結構為“/%category% /%postname%.html”,例:?//blog.com/wp/x.html,那么之前的分類鏈接顯得不合邏輯,所有我們希望將它去掉。

對于 wordpress 中的各類問題,幾乎都能找到插件解決,這個問題也不例外。但是很大一部分站長患有嚴重的代碼控,但凡修改代碼可以達到的效果絕不用插件代替,即便后者更為簡單。所以在這里介紹一個非插件的方法:
在目錄 wp-includes/category-template.php 文件中搜索:

$catlink = $wp_rewrite->get_category_permastruct();

在下面添加:

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

保存即可。

二.Wordpress3.2版本

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

function get_category_link( $category )

在最后的

return $category;

之前加入

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

保存即可。

三.Wordpress3.3.1版本

同樣位置:

function get_category_link( $category ) {
 if ( ! is_object( $category ) )
 $category = (int) $category;
$category = get_term_link( $category, 'category' );
if ( is_wp_error( $category ) )
 return '';
return $category;
 }

變為

function get_category_link( $category ) {
 if ( ! is_object( $category ) )
 $category = (int) $category;
$category = get_term_link( $category, 'category' );
if ( is_wp_error( $category ) )
 return '';
$category = str_replace('/category', "", $category);
 return $category;
 }

即可!

如果覺得我的文章對您有用,請隨意打賞。您的支持將鼓勵我繼續創作!

發表評論

電子郵件地址不會被公開。 必填項已用*標注