如何在 wordpress 中按简码列出类别?

Posted

技术标签:

【中文标题】如何在 wordpress 中按简码列出类别?【英文标题】:How to list categories by shortcode in wordpress? 【发布时间】:2013-07-18 19:55:16 【问题描述】:

找不到这个问题的答案,即使这很容易。 我想通过简码显示当前帖子的内联类别并用逗号分隔。 我在下面尝试过。

function genre( $atts, $content = null ) 
$categories = the_category(', ');
    return '<div id="genre"><b>Genre: </b>' . $categories . '</div>';


add_shortcode("genre", "genre");

这会返回Genre:

function genre( $atts, $content = null ) 
$categories = get_the_category(', ');
    return '<div id="genre"><b>Genre: </b>' . $categories . '</div>';


add_shortcode("genre", "genre");

这会返回Genre: Array

【问题讨论】:

【参考方案1】:

如果不使用插件,您需要自己生成一个函数。或者,您可以将以下内容添加到您的模板中:

<?php wp_list_categories( $args ); ?> 

文档可以在这里找到:http://codex.wordpress.org/Template_Tags/wp_list_categories

【讨论】:

【参考方案2】:
function genre( $atts, $content = null ) 
global $post;
$categories = get_the_category_list( ', ', '', $post->ID );
 return '<div id="genre"><b>Genre: </b>' . $categories . '</div>';


add_shortcode("genre", "genre");

来源:http://wordpress.org/support/topic/how-to-list-categories-by-shortcode

【讨论】:

【参考方案3】:

你可以试试wp_list_categories():

function genre() 
    $list = wp_list_categories( array(
        'taxonomy'   => 'category',
        'hide_empty' => 0,
        'echo'       => '',
        'title_li'   => '',
        // other args here
    ) );

     return "<ul>$list</ul>";



add_shortcode("genre", "genre");

【讨论】:

以上是关于如何在 wordpress 中按简码列出类别?的主要内容,如果未能解决你的问题,请参考以下文章

使用 WooCommerce 在简码中按产品类别获取产品

如何获取在 Wordpress 中按类别过滤的自定义帖子类型的永久链接?

在多维数组中按类别列出项目 - jquery

如何在数组中列出 wordpress 类别 ID 和名称?

如何在 Wordpress 中列出和重新排列或操作 Gutenberg 块类别

如何在wordpress中递归解码简码