web-dev-qa-db-ja.com

新しい役割ではメディアの詳細を編集できません

「writer」という新しいユーザーロールを作成し、次の機能を割り当てました。

read, 
edit_post ,
upload_files, 
edit_posts, 
edit_published_posts,
publish_posts,
level_0,
level_1,
level_2`

ユーザーは画像をアップロードできますが、タイトル、キャプションなどのメディアの詳細は編集できません。 non editable media file details

テキストボックスは読み取り専用です。ユーザーロールの権限がありませんか?

編集:ロールのコードは次のとおりです。

add_role( 'writer', 'Writer', array(
    'read'=>true,
    'edit_post'=>true,
    'upload_files'=>true,
    'edit_posts'=>true,
    'edit_published_posts'=> true,
    'publish_posts'=>true,
    'level_0'=>true,
    'level_1'=>true,
    'level_2'=>true
    )
 );

編集:それを見つけました。 「edit_others_posts」機能を何らかの方法で追加すると、問題が修正されました。

1
Prasun Jajodia

私のコメントで述べたように、コードの下に私はあるべきです。(テスト済みおよび動作中)

/**
 * Add new role: Writer
 * This role allows to: Add/Edit/Delete Posts and Uploads
 *
 * Read more: {@link https://codex.wordpress.org/Roles_and_Capabilities}
 *
 * Works with @version WP4.8.1 and below
 */
add_role( 'writer', 'Writer', 
    array( 
        'delete_posts'           => true,
        'delete_published_posts' => true,
        'edit_posts'             => true,
        'edit_published_posts'   => true,
        'publish_posts'          => true,
        'read'                   => true,
        'upload_files'           => true, 
        )
    );

functions.phpにコードを追加し、データベースに追加されるため、バックエンド(管理パネル)で追加/表示された後に削除してください。それ以外の場合、WPはロールの追加を試みます(既に行われていますが)every常にすべてのユーザーからの訪問。 (この場合は役に立たず、悪い習慣)

注意事項として、 Codex を読んで、私が説明しようとしたことを理解してください。
自分の好みに合わせて(不要なコードを削除)調整します。

1
Charles