发新话题
打印

[问题求助] 有什么办法可以在永久链接输出 多级category时中间用下划线连接?

有什么办法可以在永久链接输出 多级category时中间用下划线连接?

永久链接中URL直接用postid好像过份了一些,我还是希望目录结构中能保留category,但是自己用的多级分类比较多,
目前%category%显示格式是: /cat1/cat2/cat3/....     不知道有什么办法可以改成 cat1_cat2_cat3... 这样的格式呢?
找了很久,改了 wordpress\wp-includes\category-template.php 里的 get_category_link,还是不管用,不知道在哪个地方又被替换掉了?

function get_category_link($category_id) {
    global $wp_rewrite;
    $catlink = $wp_rewrite->get_category_permastruct();

    if ( empty($catlink) ) {
        $file = get_option('home') . '/';
        $catlink = $file . '?cat=' . $category_id;
    } else {
        $category = &get_category($category_id);
        if ( is_wp_error( $category ) )
            return $category;
        $category_nicename = $category->slug;

        if ( $parent = $category->parent )
            $category_nicename = get_category_parents($parent, false, '_', true) . $category_nicename;  //把里面的 "/" 改成"_"了

        $catlink = str_replace('%category%', $category_nicename, $catlink);
        $catlink = get_option('home') . user_trailingslashit($catlink, 'category');
    }
    return apply_filters('category_link', $catlink, $category_id);
}

TOP

不明白你的意思,我定义永久链接,可以这样的啊

TOP

少改了个文件
link-template.php
复制内容到剪贴板
代码:
$category = $cats[0]->slug;
if ( $parent=$cats[0]->parent )
$category = get_category_parents($parent, FALSE, '/', TRUE) . $category;

TOP

发新话题