假如你是一个 WordPress 开拓者,给本身的日志(可能自界说范例的日志)添加自界说分类模式(custom taxonomy),而且你的系统还支持注册用户在前台通过一个表单来投稿,而且需要用户也能输入自界说分类,这个时候你就利用 wp_insert_post 函数来插入日志,可是 wp_insert_post 函数内部是有权限判定的:
if ( current_user_can($taxonomy_obj->cap->assign_terms) )wp_set_post_terms( $post_ID, $tags, $taxonomy );
自界说分类模式(custom taxonomy)默认的 assign_terms 权限是:manage_categories,可以打点分类,而只有打点员可能编辑(editor)可以打点分类。所以我们在建设自界说分类的时候,就要将其 assign_terms 权限配置为支持订阅者。好比:
register_taxonomy('device',
'post',
array(
'hierarchical' => true,
'label' => '合用设备',
'query_var' => true,
'rewrite' => array('slug' => 'device','with_front'=>false),
'capabilities' => array(
'manage_terms' => 'manage_categories',
'edit_terms' => 'manage_categories',
'delete_terms' => 'manage_categories',
'assign_terms' => 'read'
)
)
);
上面就建设了一个 “device” 的自界说分类,而且将其权限分配配置为 read,这样订阅者(普通用户)也能操纵了。
原文地点:
WordPress v3.5.2 简体中文版下载