Несколько возможностей для пользовательских типов записей - PullRequest
0 голосов
/ 25 февраля 2020

Я создал пользовательскую роль пользователя, используя этот код:

<?php
 add_role('editor_contingut','Editor contingut',
    array(
        'read' => true,
    )
);

if ( current_user_can('editor_contingut') && !current_user_can('upload_files') )
add_action('admin_init', 'allow_contributor_uploads');

 function allow_contributor_uploads() {
    $contributor = get_role('editor_contingut');
    $contributor->add_cap('upload_files');      
 }

Затем я создал пользовательский тип публикации под названием «Повестка дня» и назначил возможности изменения для новой роли пользователя:

register_post_type( 'agenda',
    array(
        'menu_icon' => 'dashicons-calendar-alt',
        'public' => true,
        'publicly_queryable' => true,
        'show_ui' => true,
        'has_archive' => false,
        'hierarchical' => true,
        'capability_type' => 'page',
        'supports' => array(
            'title',
            'editor',
            'thumbnail',
            'page-attributes'
        ),
        'query_var' => true,
        'labels' => array(
            'name' => __( 'Agenda' ),
            'singular_name' => __( 'Agenda' ),
            'add_new' => __( 'Afegeix' ),
            'add_new_item' => __( 'Afegeix' )
        ),
        'capabilities' => array(
            'edit_post' => 'editor_contingut',
            'read_post' => 'editor_contingut',
            'delete_post' => 'editor_contingut',
            'edit_posts' => 'editor_contingut',
            'edit_others_posts' => 'editor_contingut',
            'delete_posts' => 'editor_contingut',
            'publish_posts' => 'editor_contingut',
            'read_private_posts' => 'editor_contingut'
        )
    )
);

Но с этим кодом, новым пост-типом 'Повестка дня', он может быть изменен только новым пользователем 'editor_contingut'.

Я бы хотел изменить пост- введите с новым пользователем и с правами администратора. Что мне нужно добавить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...