显示带有链接的当前帖子类别的快捷代码

时间:2019-06-28 作者:Joe Titus

我想使用快捷码显示当前帖子类别和链接[post_category]. 下面我得到的当前代码将当前类别显示为文本。我希望它成为该类别的链接。谢谢

function category_name_shortcode(){
    global $post;
    $post_id = $post->ID;
    $catName = "";
    foreach((get_the_category($post_id)) as $category){
        $catName .= $category->name . " ,";
    }
    return $catName;
}
add_shortcode(\'post_category\',\'category_name_shortcode\');

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

一种方法是修改当前代码并在其中添加链接:

function category_name_shortcode() {
    global $post;
    $post_id = $post->ID;
    $catName = "";
    foreach((get_the_category($post_id)) as $category){
        $catName .= \'<a href="\' . get_term_link($category) . \'">\' . $category->name . \'</a>, \';
    }
    return $catName;
}
add_shortcode( \'post_category\', \'category_name_shortcode\' );
但是有一种更简单的方法,因为WP已经有了一种获取带有链接的类别列表的方法(get_the_category_list):

function category_name_shortcode() {
    return get_the_category_list( \', \' );
}
add_shortcode( \'post_category\', \'category_name_shortcode\' );

相关推荐

Geoip shortcodes in comments

我想知道如何从geoip插件添加国家/地区短代码(https://pl.wordpress.org/plugins/geoip-detect/) 输入注释字段。[geoip\\u detect2 property=“country”]据我所知,注释字段必须是所见即所得字段(默认情况下不是文本)。还有其他方法吗?通过自定义php函数或其他方式?你好,Michal