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);