如何编写WordPress短代码,仅显示单篇文章的单个分类名称
实现仅显示单个分类名称的WordPress短代码
你可以用下面的代码替换原有短代码函数,它会直接输出单个分类名称,不会生成列表结构:
function single_category_name_func( $atts ){ $categories = get_the_category(); $output = ''; // 检查是否存在分类 if( $categories ) { // 直接取第一个分类的名称(适配你单分类的场景) $output = $categories[0]->cat_name; } else { // 文章无分类时的默认文本,可按需修改 $output = '未分类'; } return $output; } add_shortcode( 'single-category', 'single_category_name_func' );
代码说明:
- 移除了原代码中生成
<ul>、<li>标签的逻辑,直接返回纯文本的分类名称 - 借助
get_the_category()返回的分类数组,直接取第一个元素的cat_name属性(匹配你站点单分类的设定) - 增加了无分类场景的处理,避免出现空内容,默认返回“未分类”,你可以根据需求修改这个文本
- 短代码名称设置为
[single-category],你也可以改成自己偏好的名称(比如post-category)
使用时,在文章内容或模板中插入[single-category]即可显示当前文章的分类名称。
内容的提问来源于stack exchange,提问作者anat
相关产品推荐
相关产品推荐

