register_post_status() 函数用于注册自定义的文章状态。
函数语法:
register_post_status( $post_status, $args )
参数说明:
$post_status:自定义文章状态的名称,必需参数。
$args:一个数组,用于定义自定义文章状态的详细信息,可选参数。
$args 数组支持以下参数:
'label':自定义文章状态的标签,默认值为 $post_status。
'public':定义自定义文章状态是否公开可见,默认值为 false。
'protected':定义自定义文章状态是否受保护,默认值为 false。
'private':定义自定义文章状态是否私有,默认值为 false。
'internal':定义自定义文章状态是否内部使用,默认值为 false。
'exclude_from_search':定义自定义文章状态是否在搜索中排除,默认值为 true。
'show_in_admin_all_list':定义自定义文章状态是否在所有文章列表中显示,默认值为 false。
'show_in_admin_status_list':定义自定义文章状态是否在文章状态筛选列表中显示,默认值为 false。
'publicly_queryable':定义自定义文章状态是否可以通过公共查询访问,默认值为 null。
'show_in_rest':定义自定义文章状态是否在REST API中暴露,默认值为 null。
'rest_base':定义自定义文章状态在REST API中的基础路径,默认值为 $post_status。
'capabilities':定义自定义文章状态的权限,默认值为 null。
函数返回一个 WP_Post_Status 对象,包含自定义文章状态的详细信息。
使用示例:
1. 注册一个名称为 "featured" 的自定义文章状态:
register_post_status( 'featured', array(
'label' => 'Featured',
'public' => true,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop( 'Featured (%s)', 'Featured (%s)' )
) );
2. 获取已注册的自定义文章状态的详细信息:
$status = get_post_status_object( 'featured' );
echo $status->label; // 输出 "Featured"
echo $status->public; // 输出 true
注意事项:
- 自定义文章状态的名称可以包含字母、数字、下划线和连字符,且长度不能超过20个字符。
- 如果注册的自定义文章状态与现有的文章状态名称冲突,将会覆盖现有的状态。
0 个评论