如何在CPT单篇文章模板中嵌入短代码显示分类法名称
实现方法(无PHP基础友好版)
第一步:添加短代码函数到主题文件
- 登录WordPress后台,进入「外观」→「主题文件编辑器」
- 在右侧文件列表里找到并点击「functions.php」(优先用子主题的
functions.php,避免主题更新后代码丢失) - 在文件末尾粘贴以下代码,务必把
'你的分类法slug'替换成你实际的分类法别名(比如你创建的分类法叫"项目分类",slug可能是project_category):
// 创建显示特定分类法名称的短代码 add_shortcode('显示分类名称', 'get_custom_taxonomy_name'); function get_custom_taxonomy_name() { // 替换成你的目标分类法slug $taxonomy = '你的分类法slug'; // 获取当前文章关联的该分类法项 $terms = get_the_terms(get_the_ID(), $taxonomy); // 如果有分类项,提取名称并返回 if ($terms && !is_wp_error($terms)) { $term_names = array(); foreach ($terms as $term) { $term_names[] = $term->name; } // 多个分类用逗号分隔,可改成其他分隔符比如'/' return implode(', ', $term_names); } // 没有分类时显示的内容,可自定义 return '暂无分类'; }
- 点击「更新文件」保存。
第二步:在CPT单篇模板里嵌入短代码
- 回到「主题文件编辑器」,找到你的自定义文章类型单篇模板,文件名一般是
single-你的cpt别名.php(比如你的CPT叫"书籍",slug是book,模板就是single-book.php) - 在你想显示分类名称的位置,插入短代码:
[显示分类名称] - 点击「更新文件」保存,刷新CPT单篇页面就能看到效果。
额外提示
- 要是找不到对应的模板文件,也可以用可视化页面编辑器(比如Elementor)编辑CPT模板,直接在编辑器里插入短代码即可,不用碰PHP文件。
- 不确定分类法slug的话,可在后台分类法管理页面查看,或者用「Custom Post Type UI」插件的设置里找。
内容的提问来源于stack exchange,提问作者anat
相关产品推荐
相关产品推荐

