将以下代码添加到函数中。php:
function allow_contributor_uploads() {
$contributor = get_role(\'contributor\');
$contributor->add_cap(\'upload_files\');
}
if ( current_user_can(\'contributor\') && !current_user_can(\'upload_files\') ) {
add_action(\'admin_init\', \'allow_contributor_uploads\');
}
这将添加
upload_files
贡献者角色的能力。只需运行一次;只需以参与者角色的用户身份登录admin即可。成功添加功能后,如果需要,可以删除(或注释掉)代码。
要删除upload_files
功能并将参与者角色返回为默认值,请使用以下选项:
function deny_contributor_uploads() {
$contributor = get_role(\'contributor\');
$contributor->remove_cap(\'upload_files\');
}
if ( current_user_can(\'contributor\') && current_user_can(\'upload_files\') ) {
add_action(\'admin_init\', \'deny_contributor_uploads\');
}
Plugin Option
根据Kaiser提出的建议,这里有一个插件,它将创建一个新的用户角色,具有贡献者功能(编辑、删除和读取帖子),以及上传文件功能。
<?php
/**
* Plugin Name: Add Contributor Plus Role
* Description: Activate plugin to create a user role with Contributor capabilities, PLUS upload_files.
* Plugin URI: http://wordpress.stackexchange.com/questions/165951/publish-author-posts-only-with-editor-approval/165957#165957
* Version: 1.0
*/
add_action( \'wp_loaded\', \'add_new_contributor_plus_role\');
function add_new_contributor_plus_role() {
add_role(
\'contributor_plus\',
__( \'Contributor Plus\' ),
array(
\'edit_posts\' => true,
\'delete_posts\' => true,
\'read\' => true,
\'upload_files\' => true
)
);
}
?>
将上述代码添加到
/wp-content/plugins/add-contributor-plus-role/add-contributor-plus-role.php
, 或者创建/add contributor plus角色/add contributor plus角色。php文件夹和本地文件,添加到zip文件,并使用插件>添加新内容>上载进行上载。您可以随意将用户角色的名称更改为您想要的任何名称。
激活插件,将添加角色。您可以停用插件,并将其删除;它不会影响新创建的用户角色。
如果您改变主意,希望删除“Contributor Plus”用户角色,请使用以下内容代替add\\u角色行(至;分号),并再次激活插件:
remove_role( \'contributor_plus\' );