register_post_type

https://developer.wordpress.org/reference/functions/register_post_type/

参数 默认值 说明
label labels.name 文章类型显示名称,建议通过 labels 配置
labels [] 后台界面各位置显示的名称,如新增、编辑、查看等
description '' 文章类型描述
public false 是否为公开文章类型,影响多个公开性参数的默认值
hierarchical false 是否支持父子文章关系,true 类似页面,false 类似文章
exclude_from_search !public 是否从 WordPress 前台搜索结果中排除
publicly_queryable 继承 public 是否允许通过前台公开请求查询该文章类型
embeddable 继承 public 是否允许文章类型的内容被嵌入其他页面
show_ui 继承 public 是否生成后台文章管理界面
show_in_menu 继承 show_ui 是否显示后台菜单,支持指定父菜单 slug
show_in_nav_menus 继承 public 是否允许在导航菜单中选择此文章类型
show_in_admin_bar 继承 show_in_menu 是否在顶部管理工具栏显示相关入口
menu_position null 后台菜单位置,如 5 文章、10 媒体、20 页面
menu_icon null 后台菜单图标,支持 Dashicons、图片 URL、SVG Data URI
capability_type 'post' 权限基础类型,支持 post、page 或自定义名称
capabilities [] 自定义权限映射,如编辑、发布、删除文章所需权限
map_meta_cap 根据权限配置决定 是否启用 WordPress 元权限映射,post/page 类型通常自动启用
supports ['title', 'editor'] 支持的文章功能,如标题、正文、缩略图、摘要、评论、自定义字段等
register_meta_box_cb null 自定义 Meta Box 注册回调函数
template [] Gutenberg 区块编辑器初始区块模板
template_lock false 区块模板锁定方式,支持 all、insert、contentOnly、false
taxonomies [] 关联的分类法名称,如 game_category、game_tag
has_archive false 是否启用文章类型归档,true 使用默认路径,字符串指定路径
rewrite true 是否启用固定链接重写,支持 slug、with_front、feeds、pages、ep_mask
query_var true 公开查询变量,true 使用文章类型标识,false 禁用专用查询变量
can_export true 是否允许通过 WordPress 导出工具导出该文章类型
delete_with_user null 删除用户时是否将其文章移入回收站,默认根据 author 支持情况决定
show_in_rest false 是否通过 REST API 开放该文章类型,使用区块编辑器通常需要开启
rest_base 文章类型标识 REST API 路由基础名称,例如 games
rest_namespace wp/v2 REST API 命名空间
rest_controller_class WP_REST_Posts_Controller REST API 文章控制器类
autosave_rest_controller_class WP_REST_Autosaves_Controller 自动保存 REST 控制器,可自定义或禁用
revisions_rest_controller_class WP_REST_Revisions_Controller 修订版本 REST 控制器,可自定义或禁用
late_route_registration false 是否调整自动保存与修订版本 REST 路由的注册顺序
_builtin false 是否为 WordPress 内置文章类型,不建议自行设置
_edit_link 'post.php?post=%d' 后台文章编辑链接格式,不建议自行修改

register_taxonomy

https://developer.wordpress.org/reference/functions/register_taxonomy/

参数 类型 默认值 说明
label string labels.name 分类法显示名称,建议通过 labels 配置
labels array [] 后台界面各种文字,如添加、编辑、搜索、查看分类项等
description string '' 分类法描述,用于说明分类法用途
public bool true 是否为公开分类法,影响多个公开性和后台界面参数的默认值
publicly_queryable bool 继承 public 是否允许通过前台公开请求查询该分类法
hierarchical bool false 是否支持父子分类关系,true 类似 category,false 类似 post_tag
show_ui bool 继承 public 是否生成后台分类项管理界面
show_in_menu bool 继承 show_ui 是否在关联文章类型的后台菜单中显示分类法管理入口
show_in_nav_menus bool 继承 public 是否允许在 WordPress 导航菜单中选择该分类法的分类项
show_tagcloud bool 继承 show_ui 是否在标签云相关界面中提供该分类法
show_in_quick_edit bool 继承 show_ui 是否在文章列表的快速编辑和批量编辑中显示该分类法
show_admin_column bool false 是否在关联文章类型的后台文章列表中自动添加分类法列
meta_box_cb callable/bool null 自定义分类选择框回调,默认根据 hierarchical 使用分类复选框或标签输入框,false 禁用
meta_box_sanitize_cb callable null 分类选择框提交数据的清理回调,默认根据选择框类型自动确定
capabilities array 默认权限映射 分类法权限配置,包含 manage_terms、edit_terms、delete_terms、assign_terms
rewrite bool/array true 是否启用美化固定链接,数组支持 slug、with_front、hierarchical、ep_mask
query_var bool/string 分类法标识符 前台查询变量名称,false 禁用专用查询变量,字符串可自定义名称
show_in_rest bool false 是否通过 REST API 开放该分类法,Gutenberg 区块编辑器通常需要开启
rest_base string 分类法标识符 REST API 路由基础名称,例如 game-categories
rest_namespace string wp/v2 REST API 命名空间
rest_controller_class string WP_REST_Terms_Controller REST API 分类项控制器,可以指定自定义控制器类
default_term string/array/null null 默认分类项,可配置 name、slug、description,WordPress 会处理其创建及默认关联
update_count_callback callable/string '' 分类项关联数量更新回调,默认根据关联对象类型自动选择统计函数
sort bool null 是否记录分类项与对象的关联顺序,启用后维护 term_order,不代表自动排序显示
args array/null null 传递给 wp_get_object_terms() 的默认查询参数,如 orderby、order
_builtin bool false 是否为 WordPress 内置分类法,内部参数,不建议自行设置

示例

register_post_type

$labels = [
    # 复数或集合名称
    'name' => '游戏',
    # 单个文章类型名称
    'singular_name' => '游戏',
    # 后台菜单名称
    'menu_name' => '游戏管理',
    # 顶部管理工具栏中的名称
    'name_admin_bar' => '游戏',
    # 新增按钮文字
    'add_new' => '添加游戏',
    # 新增文章页面标题
    'add_new_item' => '添加新游戏',
    # 编辑文章页面标题
    'edit_item' => '编辑游戏',
    # 新建文章名称
    'new_item' => '新游戏',
    # 查看单个文章
    'view_item' => '查看游戏',
    # 查看文章列表
    'view_items' => '查看游戏列表',
    # 查看所有文章
    'all_items' => '全部游戏',
    # 搜索文章
    'search_items' => '搜索游戏',
    # 未找到文章时的提示
    'not_found' => '没有找到游戏',
    # 回收站中未找到文章时的提示
    'not_found_in_trash' => '回收站中没有游戏',
    # 父级文章名称(主要用于层级型文章类型)
    'parent_item_colon' => '父级游戏:',
    # 导航菜单中的归档名称
    'archives' => '游戏归档',
    # 文章属性区域标题
    'attributes' => '游戏属性',
    # 媒体管理中插入到当前文章的提示
    'insert_into_item' => '插入到游戏',
    # 媒体管理中上传到当前文章的筛选文字
    'uploaded_to_this_item' => '上传到此游戏',
    # 特色图片区域标题
    'featured_image' => '游戏封面',
    # 设置特色图片按钮
    'set_featured_image' => '设置游戏封面',
    # 移除特色图片按钮
    'remove_featured_image' => '移除游戏封面',
    # 媒体管理中使用特色图片的按钮
    'use_featured_image' => '用作游戏封面',
    # 后台文章列表的筛选辅助标题
    'filter_items_list' => '筛选游戏列表',
    # 后台文章列表日期筛选的辅助文字
    'filter_by_date' => '按日期筛选游戏',
    # 后台文章列表分页导航的辅助标题
    'items_list_navigation' => '游戏列表导航',
    # 后台文章列表的辅助标题
    'items_list' => '游戏列表',
    # 文章发布成功提示
    'item_published' => '游戏发布成功。',
    # 文章以私有状态发布成功提示
    'item_published_privately' => '游戏已设为私有并发布。',
    # 文章恢复为草稿时的提示
    'item_reverted_to_draft' => '游戏已恢复为草稿。',
    # 文章移入回收站时的提示
    'item_trashed' => '游戏已移至回收站。',
    # 文章定时发布成功提示
    'item_scheduled' => '游戏已计划发布。',
    # 文章更新成功提示
    'item_updated' => '游戏更新成功。',
    # 导航链接区块中的文章链接名称
    'item_link' => '游戏链接',
    # 导航链接区块中的文章链接描述
    'item_link_description' => '指向游戏详情页面的链接。',
    # 区块编辑器中的单篇内容模板名称(WordPress 6.6+)
    'template_name' => '单个游戏',
];

$args = [
    /**
     * 基础信息
     * */
    # 文章类型显示名称,默认使用 labels['name']
    'label' => '游戏',
    # 后台界面各位置显示的名称,默认根据文章或页面类型自动生成。https:#developer.wordpress.org/reference/functions/get_post_type_labels/
    'labels' => $labels,
    # 文章类型描述,默认空字符串
    'description' => 'Steam 游戏资料管理',
    
    /**
     * 公开性
     * */
    # 是否为公开内容类型,默认 false。会影响 publicly_queryable、show_ui、show_in_nav_menus、exclude_from_search 的默认值
    'public' => true,
    # 是否支持父子文章关系,默认 false。true 类似 page,url结构带层级,需配合supports.page-attributes,false 类似 post
    'hierarchical' => false,
    # 是否从前台搜索结果中排除,默认 !public。true 排除,false 不排除
    'exclude_from_search' => false,
    # 是否允许通过前台公开请求查询该类型,默认继承 public
    'publicly_queryable' => true,
    
    /**
     * 后台管理
     * */
    # 是否生成后台管理界面,默认继承 public
    'show_ui' => true,
    # 是否显示在后台菜单,默认继承 show_ui。true 为独立一级菜单,false 为不显示,也可传父菜单 slug
    'show_in_menu' => true,
    # 是否允许在导航菜单中选择该文章类型,默认继承 public
    'show_in_nav_menus' => true,
    # 是否在顶部管理工具栏中提供入口,默认继承 show_in_menu
    'show_in_admin_bar' => true,
    # 后台菜单位置,默认 null。5文章附近、10媒体附近、20页面附近、25评论附近、65插件附近
    'menu_position' => 5,
    # 后台菜单图标,默认使用文章图标。支持 Dashicons 名称、图片 URL、SVG Data URI 或 none
    'menu_icon' => 'dashicons-games',
    
    /**
     * 权限
     * */
    # 权限名称基础类型,默认 post。可使用 'post'、'page' 或自定义的 ['game', 'games']
    'capability_type' => 'post',
    # 自定义权限映射,默认根据 capability_type 自动生成
    #'capabilities' => [],
    # 是否使用 WordPress 的元能力映射,文档默认 false。对内置 post/page 权限类型存在特殊默认处理
    'map_meta_cap' => true,
    
    /**
     * 编辑器
     * */
    # 编辑器支持的功能,默认 ['title', 'editor']。也可以设为 false,表示不启用任何默认支持功能
    'supports' => [
        # 标题编辑
        'title',
        # 正文编辑器
        'editor',
        # 特色图片
        'thumbnail',
        # 文章摘要
        'excerpt',
        # 文章作者
        'author',
        # 评论功能
        'comments',
        # 历史修订版本
        'revisions',
        # 自动保存,editor 支持也会隐含启用此功能
        'autosave',
        # 自定义字段
        'custom-fields',
        # 页面属性及排序,层级文章可使用父级选择
        'page-attributes',
        # 文章形式
        'post-formats',
        # 引用通告
        'trackbacks',
    ],
    # 自定义 Meta Box 注册回调,默认 null。函数内可以调用 add_meta_box()、remove_meta_box()
    'register_meta_box_cb' => null,
    # 区块编辑器初始模板,默认 []。每个区块可配置名称、属性以及可选的内部区块
    'template' => [],
    # 区块模板锁定方式,默认 false 不锁定,all 完全锁定,insert 禁止增删,contentOnly 仅编辑内容
    'template_lock' => false,
    
    /**
     * 分类法
     * */
    # 关联的分类法名称数组,默认 []
    'taxonomies' => [
        'game_category',
        'game_tag',
        'game_platform',
    ],
    
    /**
     * URL
     * */
    # 是否启用文章类型归档,默认 false。true 使用默认 slug,字符串可指定归档 slug
    'has_archive' => 'games',
    # 控制固定链接重写规则,默认 true。false 禁用重写,true 使用默认规则,数组可自定义
    'rewrite' => [
        # 固定链接路径前缀,默认文章类型标识 game
        'slug' => 'game',
# 是否添加全局固定链接 front 前缀(front 是第一个固定链接占位符之前的静态路径,而不是整个固定链接结构)
        # 决定是否继承全局固定链接的静态前缀,默认true,如固定链接为/blog/%postname%/,则文章链接为/blog/$posttype_key/postname/
        # global $wp_rewrite; echo $wp_rewrite->front;
        'with_front' => false,
        # 是否生成 Feed 重写规则,默认继承 has_archive
        'feeds' => true,
        # 是否生成分页重写规则,默认 true
        'pages' => true,
        # Endpoint 掩码,默认通常为 EP_PERMALINK
        'ep_mask' => EP_PERMALINK,
    ],
    # 查询变量名称,默认文章类型标识 game。true 使用类型名称,false 禁用专用查询变量,也可传自定义字符串
    'query_var' => true,
    # 是否允许通过 WordPress 导出工具导出,默认 true
    'can_export' => true,
    # 删除作者时是否将其文章移入回收站,默认 null。true 删除,false 保留,null 根据 author 支持决定
    'delete_with_user' => false,
    
    /**
     * REST API
     * */
    # 是否在 REST API 中公开注册此文章类型,默认 false
    # 使用区块编辑器时需要开启
    'show_in_rest' => true,
    # REST API 基础路由名称,默认文章类型标识 game
    'rest_base' => 'games',
    # REST API 命名空间,默认 wp/v2
    'rest_namespace' => 'wp/v2',
    # REST API 主控制器类,默认 WP_REST_Posts_Controller
    'rest_controller_class' => WP_REST_Posts_Controller::class,
    # 自动保存 REST API 控制器,默认 WP_REST_Autosaves_Controller,也可以使用 false 禁用对应控制器
    'autosave_rest_controller_class' => WP_REST_Autosaves_Controller::class,
    # 修订版本 REST API 控制器,默认 WP_REST_Revisions_Controller,也可以使用 false 禁用对应控制器
    'revisions_rest_controller_class' => WP_REST_Revisions_Controller::class,
    # 自动保存及修订 REST 路由是否晚于主路由注册,默认 false
    'late_route_registration' => false,
    
    
    # 是否为 WordPress 内置文章类型,内部参数,不建议自行设置,默认 false
    # '_builtin' => false,
    # 后台编辑链接格式,内部参数,不建议自行设置,默认 post.php?post=%d
    # '_edit_link' => 'post.php?post=%d',
];

# https:#developer.wordpress.org/reference/functions/register_post_type/
register_post_type($posttype_key, $args);

 

自定义文章术语 register_taxonomy :

$labels = [
    # 复数或集合名称
    'name' => '游戏分类',
    # 单个分类项名称
    'singular_name' => '游戏分类',
    # 后台菜单名称,默认继承 name
    'menu_name' => '游戏分类',
    # 搜索分类项时显示的文字
    'search_items' => '搜索游戏分类',
    # 热门分类项名称,主要用于非层级型分类法
    'popular_items' => '热门游戏分类',
    # 所有分类项列表标题
    'all_items' => '全部游戏分类',
    # 父级分类项名称,主要用于层级型分类法
    'parent_item' => '父级游戏分类',
    # 父级分类项名称,带冒号,主要用于层级型分类法
    'parent_item_colon' => '父级游戏分类:',
    # 编辑分类项页面标题
    'edit_item' => '编辑游戏分类',
    # 查看单个分类项
    'view_item' => '查看游戏分类',
    # 更新分类项按钮文字
    'update_item' => '更新游戏分类',
    # 添加新分类项页面标题
    'add_new_item' => '添加新游戏分类',
    # 新建分类项名称字段标题
    'new_item_name' => '新游戏分类名称',
    # 使用逗号分隔多个分类项的提示,主要用于非层级型分类法
    'separate_items_with_commas' => '使用逗号分隔游戏分类',
    # 添加或移除分类项的提示,主要用于非层级型分类法
    'add_or_remove_items' => '添加或移除游戏分类',
    # 从最常使用的分类项中选择,主要用于非层级型分类法
    'choose_from_most_used' => '从常用游戏分类中选择',
    # 未找到分类项时的提示
    'not_found' => '没有找到游戏分类',
    # 文章列表中没有关联分类项时显示的文字
    'no_terms' => '未设置游戏分类',
    # 后台文章列表中的分类筛选提示,主要用于层级型分类法
    'filter_by_item' => '按游戏分类筛选',
    # 分类项列表分页导航的辅助标题
    'items_list_navigation' => '游戏分类列表导航',
    # 分类项列表的辅助标题
    'items_list' => '游戏分类列表',
    # 最常使用的分类项选项卡标题
    'most_used' => '最常使用',
    # 更新分类项后返回列表的链接文字
    'back_to_items' => '返回游戏分类列表',
    # 导航链接区块中的分类项链接名称,WordPress 5.8+
    'item_link' => '游戏分类链接',
    # 导航链接区块中的分类项链接描述,WordPress 5.8+
    'item_link_description' => '指向游戏分类归档页面的链接。',
    # 站点编辑器中的分类归档模板名称,WordPress 6.6+
    'template_name' => '游戏分类归档',
    
    /**
     * 分类项编辑字段说明
     * WordPress 5.9+
     */
    # 分类项名称字段下方的说明
    'name_field_description' => '名称用于在网站前台显示。',
    # 分类别名 slug 字段下方的说明
    'slug_field_description' => '别名用于生成分类页面 URL,建议使用小写英文字母、数字和连字符。',
    # 父级分类字段下方的说明,主要用于层级型分类法
    'parent_field_description' => '选择父级分类以建立层级关系。',
    # 分类项描述字段下方的说明
    'desc_field_description' => '分类描述可用于分类归档页面,是否显示取决于主题。',
];

$args = [
    /**
     * 基础信息
     */
    # 分类法显示名称,默认根据 labels.name 得到;建议优先通过 labels 设置
    'label' => '游戏分类',
    # 后台界面各位置显示的名称,默认根据 hierarchical 自动使用标签或分类目录的文字
    # https://developer.wordpress.org/reference/functions/get_taxonomy_labels/
    'labels' => $labels,
    # 分类法用途描述,默认空字符串
    'description' => '用于管理 Steam 游戏的分类信息',
    
    
    /**
     * 公开性与层级关系
     */
    # 是否作为公开分类法使用,默认 true
    # 会影响 publicly_queryable、show_ui、show_in_nav_menus 的默认值
    # 不会单独决定 REST API、URL 重写或所有数据访问行为
    'public' => true,
    # 是否允许前台通过公开查询变量查询此分类法,默认继承 public
    # false 禁止公开分类法查询,但不代表 Term 数据完全不可访问
    'publicly_queryable' => true,
    # 是否支持父子分类层级,默认 false
    # true 类似 category,支持动作游戏 > 格斗游戏
    # false 类似 post_tag,所有分类项平级
    # 注意:此项控制数据层级,不决定 URL 是否包含父分类路径
    'hierarchical' => true,
    
    
    /**
     * 后台管理
     */
    # 是否生成后台分类法管理界面,默认继承 public
    'show_ui' => true,
    # 是否在关联文章类型的后台菜单中显示分类法入口,默认继承 show_ui
    # false 隐藏菜单入口,不影响分类法注册及实际数据
    # 不同于 register_post_type,此处只接受布尔值,不用于指定父菜单 slug
    'show_in_menu' => true,
    # 是否允许在 WordPress 导航菜单中选择该分类法的分类项,默认继承 public
    'show_in_nav_menus' => true,
    # 是否允许分类法出现在标签云相关控件中,默认继承 show_ui
    # 设置 false 不会禁止程序使用 wp_tag_cloud() 自行输出
    'show_tagcloud' => false,
    # 是否在文章列表的快速编辑和批量编辑中显示分类法控件,默认继承 show_ui
    'show_in_quick_edit' => true,
    # 是否在关联文章类型的后台文章列表中自动增加分类法列,默认 false
    # 如游戏列表增加“游戏分类”列
    'show_admin_column' => true,
    
    
    /**
     * 编辑器 Meta Box
     */
    # 自定义分类选择框的渲染回调,默认 null,即由 WordPress 自动选择
    # hierarchical=true 时默认使用 post_categories_meta_box
    # hierarchical=false 时默认使用 post_tags_meta_box
    # false 表示禁用默认 Meta Box
    # 也可以传自定义 callable
    'meta_box_cb' => 'post_categories_meta_box',
    # 对经典分类选择框提交的数据进行清理的回调,默认 null,自动选择合适函数
    # 复选框类型通常使用 taxonomy_meta_box_sanitize_cb_checkboxes
    # 标签输入框通常使用 taxonomy_meta_box_sanitize_cb_input
    # 自定义输入框应根据实际数据格式提供匹配的清理回调
    'meta_box_sanitize_cb' => 'taxonomy_meta_box_sanitize_cb_checkboxes',
    
    
    /**
     * 权限
     */
    # 分类法权限映射,默认使用 WordPress 内置权限组合
    # 配置的是 capability 名称,不是角色名称
    'capabilities' => [
        # 管理分类项需要的权限,默认 manage_categories
        'manage_terms' => 'manage_categories',
        # 编辑已有分类项需要的权限,默认 manage_categories
        'edit_terms' => 'manage_categories',
        # 删除已有分类项需要的权限,默认 manage_categories
        'delete_terms' => 'manage_categories',
        # 为文章分配分类项需要的权限,默认 edit_posts
        'assign_terms' => 'edit_posts',
    ],
    
    
    /**
     * URL 与查询
     */
    # 是否启用分类法的固定链接重写规则,默认 true
    # true 使用分类法标识符作为 URL 前缀
    # false 不生成此分类法的美化 URL 重写规则
    # 数组形式可以自定义以下子参数
    'rewrite' => [
        # 分类法固定链接路径前缀,默认分类法标识符 game_category
        # 例如 games/category/action/
        # 不影响单篇游戏文章的固定链接
        'slug' => 'games/category',
        # 是否添加全局固定链接的 front 静态前缀,默认 true
        # 如全局固定链接为 /blog/%postname%/
        # true 生成 /blog/games/category/action/
        # false 生成 /games/category/action/
        # global $wp_rewrite; echo $wp_rewrite->front;
        'with_front' => false,
        # 是否在 URL 中包含完整父子分类路径,默认 false
        # true 生成 /games/category/action/fighting/
        # false 生成 /games/category/fighting/
        # 与顶层 hierarchical 是两个不同参数
        'hierarchical' => true,
        # Endpoint 掩码,默认 EP_NONE
        # 用于决定哪些端点可以附加到此分类法的固定链接结构上
        # 普通分类归档通常无需修改
        'ep_mask' => EP_NONE,
    ],
    # 分类法的公开查询变量名称,默认分类法标识符 game_category
    # true 使用默认分类法标识符,字符串可以指定其他查询变量名称
    # false 禁用此分类法专用的公开查询变量
    # 例如 /?game_category=action
    # 不等同于禁用所有 taxonomy 查询方式或禁用 rewrite URL
    'query_var' => 'game_category',
    
    
    /**
     * REST API
     */
    # 是否通过 REST API 注册此分类法,默认 false
    # 使用 Gutenberg 区块编辑器时通常需要开启
    'show_in_rest' => true,
    # REST API 路由基础名称,默认分类法标识符 game_category
    # 例如 /wp-json/wp/v2/game-categories
    'rest_base' => 'game-categories',
    # REST API 命名空间,开启 REST 时默认 wp/v2
    # 可以自定义,例如 myplugin/v1
    'rest_namespace' => 'wp/v2',
    # REST API 控制器类,默认 WP_REST_Terms_Controller
    # 可以传自定义继承类名称
    # 控制分类项 API 的查询、创建、更新、删除等行为
    'rest_controller_class' => WP_REST_Terms_Controller::class,
    
    
    /**
     * 默认分类项
     */
    # 默认分类项,默认 null,即不创建默认项
    # 可以传字符串,如 '未分类'
    # 也可以传关联数组,配置名称、slug、描述
    # WordPress 会处理默认 Term 的创建及相关默认关联逻辑
    'default_term' => [
        # 默认分类项名称,数组形式下必填
        'name' => '未分类',
        # 默认分类项 slug,可省略,由 WordPress 生成
        'slug' => 'uncategorized',
        # 默认分类项描述,可省略,默认空字符串
        'description' => '尚未归入具体类型的游戏',
    ],
    
    
    /**
     * Term 统计与排序
     */
    # 自定义 Term 关联数量更新回调,默认空字符串,由 WordPress 自动选择
    # 关联文章类型时通常使用 _update_post_term_count()
    # 关联用户等非文章对象时通常使用 _update_generic_term_count()
    # 推荐保持默认,仅在需要特殊统计逻辑时自定义
    'update_count_callback' => '',
    
    # 是否记录 wp_set_object_terms() 中分类项的分配顺序,默认 null,相当于 false
    # true 会维护 term_relationships 表中的 term_order
    # 不表示后台自动支持拖拽排序,也不表示所有查询自动按此排序
    'sort' => false,
    
    # 传给 wp_get_object_terms() 的默认查询参数,默认 null
    # 只影响相关的对象 Term 查询流程,不是全部 get_terms() 的全局默认参数
    # 可以指定 orderby、order、fields 等支持的查询参数
    'args' => [
        # 分类项排序字段
        'orderby' => 'name',
        
        # 排序方向,ASC 升序,DESC 降序
        'order' => 'ASC',
    
    ],
    
    
    /**
     * WordPress 内部参数
     */
    # 是否为 WordPress 内置分类法,内部参数,不建议自行设置,默认 false
    # '_builtin' => false,
];

# 注册自定义分类法
# 第一个参数:分类法唯一标识符
# 第二个参数:关联的文章类型,可以是字符串或数组
# 第三个参数:分类法注册配置
# https://developer.wordpress.org/reference/functions/register_taxonomy/
register_taxonomy('game_category', ['game'], $args);