• DONATE to NULLED!
    Вы можете помочь Форуму и команде, поддержать финансово.
    starwanderer - модератор этого раздела будет Вам благодарен!

Помощь Как добавить модератора в админку

Zacker2

Гуру форума
Регистрация
19 Фев 2013
Сообщения
242
Реакции
75
Мне нужно впустить в админку копирайтера, который будет добавлять статьи, редактировать разделы сайта, одним слово в раздел Админка -> Страницы. Но я не хочу чтобы он мог видеть какие модули, темы, и.т.д. используются в системе, или испортить сайт.

Подскажите пожалуйста, как можно добавить модератора в админку?
 
Последнее редактирование:
Для shop_manager есть такой вариант:
PHP:
/*************** СКРЫВАЕМ ПУНКТЫ ВЕРХНЕГО ТУЛБАРА - НАХОДИМ ПО ID БЛОКА - DIV ID **************/
function wph_new_toolbar() {
    global $user_ID;
    if ( current_user_can( 'shop_manager' ) ) {
    global $wp_admin_bar;
    $wp_admin_bar->remove_menu('new-content');         //меню "добавить"
    $wp_admin_bar->remove_menu('edit');             //меню "редактировать запись"
    $wp_admin_bar->remove_menu('comments');            //меню комментарии
    $wp_admin_bar->remove_menu('wp-logo');             //меню "о wordpress"
    $wp_admin_bar->remove_menu('delete-cache');     //удалить весь кэш wp-super cache"
    $wp_admin_bar->remove_menu('admin_bar_helper'); //shop settings
   
    }
   
}
add_action('wp_before_admin_bar_render', 'wph_new_toolbar');

/*************** СКРЫВАЕМ ПУНКТЫ БОКОВОГО МЕНЮ **************/
add_action( 'admin_menu', 'my_remove_menu_pages' ); //регистрируем действие
function my_remove_menu_pages() {
    global $user_ID;
    if ( current_user_can( 'shop_manager' ) ) {
        remove_menu_page( 'edit.php' );                           //Записи
        remove_menu_page( 'edit.php?post_type=page' );            //Страницы
        remove_menu_page( 'upload.php' );                         //Медиафайлы
        remove_menu_page( 'edit-comments.php' );                  //Комментарии
        remove_menu_page( 'edit.php?post_type=blocks' );          //Страницы
        remove_menu_page( 'edit.php?post_type=featured_item' ); //featured_item
        remove_menu_page( 'tools.php' );                          //Инструменты

    }
}
/*************** СТИЛИ ДЛЯ АДМИНКИ + УБИРАЕМ ПОДПУНКТЫ МЕНЮ WOOcommerce **************/

/*************** СКРЫВАЕМ woocommerce addons для всех **************/
add_filter('woocommerce_show_addons_page', '__return_false');

/*************** СКРЫВАЕМ подпункты для роли shop manager **************/
add_action( 'admin_menu', 'woo_remove_admin_submenus', 999 );
function woo_remove_admin_submenus() {
    global $user_ID;
    if ( current_user_can( 'shop_manager' ) ) {
        remove_submenu_page( 'woocommerce', 'wc-status' ); //для статуса
        remove_submenu_page( 'woocommerce', 'wc-settings' ); //для настройки
        }
}
/*************** css для админки для роли shop manager **************/
function gb_custom_css_admin() {
    // чтобы отображать эти стили только рядовым пользователям, раскомментируйте строку ниже и строку в конце кода
    // можно также изменить user на admin, чтобы отображать код наоборот только администраторам
    if( current_user_can( 'shop_manager' ) ):
        echo PHP_EOL . '<style type="text/css">
            /* убираем пункт меню yith plugins для пользователя с ролью shop_manager */
            #toplevel_page_yit_plugin_panel {display: none;}
            /* убираем "настройки" для пользователя с ролью shop_manager */
            #screen-options-link-wrap {display: none;}
            /* убираем "помощь справа вверху" для пользователя с ролью shop_manager */
            #contextual-help-link-wrap {display: none;}
            #wpfooter {display: none;}
            /* убираем "сменить пароль" для пользователя с ролью shop_manager */
            tr#password {display: none;}
            .categorydiv div.tabs-panel {
            max-height: 400px;
            }
        </style>' . PHP_EOL;
    endif;
        echo PHP_EOL . '<style type="text/css">
            /* Высота дива категорий в админке карточки товара */
            #product_cat-all {
            max-height: 400px;
            }
        </style>' . PHP_EOL;
}
add_action('admin_head', 'gb_custom_css_admin');
Выглядеть будет так :
Untitled-1.jpg
 
Последнее редактирование:
Речь шла о страницах, а точнее как я понял о записях. А вот так можно - модератор имеет права только на редактирование добавление (разные юзеры) записей? и все? И не видт что это WorPress
 
Подскажите пожалуйста, как можно добавить модератора в админку?
А почему Вас не устраивает встроенные в ВП права, например «Автор» или повысьте его до «Редактор» — Для просмотра ссылки Войди или Зарегистрируйся
Зачем нужно использовать плагины и хаки, если и так всё есть?
Можно и так: пусть сделает первоначальную структуру, набьёт статей в режиме «Редактор», потом можно понизить его до «Автор».
 
[паранойя-mode]Человек хочет скрыть даже установленные плагины[/паранойя-mode]

А так, да - встроенные роли + user role editor для более тонкой настройки.
А если просто добавлять статьи в одну категорию, то можно через email вроде, но я эту функцию не тестил ни разу.
 
Для shop_manager есть такой вариант:
PHP:
/*************** СКРЫВАЕМ ПУНКТЫ ВЕРХНЕГО ТУЛБАРА - НАХОДИМ ПО ID БЛОКА - DIV ID **************/
function wph_new_toolbar() {
    global $user_ID;
    if ( current_user_can( 'shop_manager' ) ) {
    global $wp_admin_bar;
    $wp_admin_bar->remove_menu('new-content');         //меню "добавить"
    $wp_admin_bar->remove_menu('edit');             //меню "редактировать запись"
    $wp_admin_bar->remove_menu('comments');            //меню комментарии
    $wp_admin_bar->remove_menu('wp-logo');             //меню "о wordpress"
    $wp_admin_bar->remove_menu('delete-cache');     //удалить весь кэш wp-super cache"
    $wp_admin_bar->remove_menu('admin_bar_helper'); //shop settings
  
    }
  
}
add_action('wp_before_admin_bar_render', 'wph_new_toolbar');

/*************** СКРЫВАЕМ ПУНКТЫ БОКОВОГО МЕНЮ **************/
add_action( 'admin_menu', 'my_remove_menu_pages' ); //регистрируем действие
function my_remove_menu_pages() {
    global $user_ID;
    if ( current_user_can( 'shop_manager' ) ) {
        remove_menu_page( 'edit.php' );                           //Записи
        remove_menu_page( 'edit.php?post_type=page' );            //Страницы
        remove_menu_page( 'upload.php' );                         //Медиафайлы
        remove_menu_page( 'edit-comments.php' );                  //Комментарии
        remove_menu_page( 'edit.php?post_type=blocks' );          //Страницы
        remove_menu_page( 'edit.php?post_type=featured_item' ); //featured_item
        remove_menu_page( 'tools.php' );                          //Инструменты

    }
}
/*************** СТИЛИ ДЛЯ АДМИНКИ + УБИРАЕМ ПОДПУНКТЫ МЕНЮ WOOcommerce **************/

/*************** СКРЫВАЕМ woocommerce addons для всех **************/
add_filter('woocommerce_show_addons_page', '__return_false');

/*************** СКРЫВАЕМ подпункты для роли shop manager **************/
add_action( 'admin_menu', 'woo_remove_admin_submenus', 999 );
function woo_remove_admin_submenus() {
    global $user_ID;
    if ( current_user_can( 'shop_manager' ) ) {
        remove_submenu_page( 'woocommerce', 'wc-status' ); //для статуса
        remove_submenu_page( 'woocommerce', 'wc-settings' ); //для настройки
        }
}
/*************** css для админки для роли shop manager **************/
function gb_custom_css_admin() {
    // чтобы отображать эти стили только рядовым пользователям, раскомментируйте строку ниже и строку в конце кода
    // можно также изменить user на admin, чтобы отображать код наоборот только администраторам
    if( current_user_can( 'shop_manager' ) ):
        echo PHP_EOL . '<style type="text/css">
            /* убираем пункт меню yith plugins для пользователя с ролью shop_manager */
            #toplevel_page_yit_plugin_panel {display: none;}
            /* убираем "настройки" для пользователя с ролью shop_manager */
            #screen-options-link-wrap {display: none;}
            /* убираем "помощь справа вверху" для пользователя с ролью shop_manager */
            #contextual-help-link-wrap {display: none;}
            #wpfooter {display: none;}
            /* убираем "сменить пароль" для пользователя с ролью shop_manager */
            tr#password {display: none;}
            .categorydiv div.tabs-panel {
            max-height: 400px;
            }
        </style>' . PHP_EOL;
    endif;
        echo PHP_EOL . '<style type="text/css">
            /* Высота дива категорий в админке карточки товара */
            #product_cat-all {
            max-height: 400px;
            }
        </style>' . PHP_EOL;
}
add_action('admin_head', 'gb_custom_css_admin');
Выглядеть будет так :

Эту функцию надо добавлять в функции темы , или в функции админки в сами файлы ВП ?
 
Для shop_manager есть такой вариант:
PHP:
/*************** СКРЫВАЕМ ПУНКТЫ ВЕРХНЕГО ТУЛБАРА - НАХОДИМ ПО ID БЛОКА - DIV ID **************/
function wph_new_toolbar() {
    global $user_ID;
    if ( current_user_can( 'shop_manager' ) ) {
    global $wp_admin_bar;
    $wp_admin_bar->remove_menu('new-content');         //меню "добавить"
    $wp_admin_bar->remove_menu('edit');             //меню "редактировать запись"
    $wp_admin_bar->remove_menu('comments');            //меню комментарии
    $wp_admin_bar->remove_menu('wp-logo');             //меню "о wordpress"
    $wp_admin_bar->remove_menu('delete-cache');     //удалить весь кэш wp-super cache"
    $wp_admin_bar->remove_menu('admin_bar_helper'); //shop settings
 
    }
 
}
add_action('wp_before_admin_bar_render', 'wph_new_toolbar');

/*************** СКРЫВАЕМ ПУНКТЫ БОКОВОГО МЕНЮ **************/
add_action( 'admin_menu', 'my_remove_menu_pages' ); //регистрируем действие
function my_remove_menu_pages() {
    global $user_ID;
    if ( current_user_can( 'shop_manager' ) ) {
        remove_menu_page( 'edit.php' );                           //Записи
        remove_menu_page( 'edit.php?post_type=page' );            //Страницы
        remove_menu_page( 'upload.php' );                         //Медиафайлы
        remove_menu_page( 'edit-comments.php' );                  //Комментарии
        remove_menu_page( 'edit.php?post_type=blocks' );          //Страницы
        remove_menu_page( 'edit.php?post_type=featured_item' ); //featured_item
        remove_menu_page( 'tools.php' );                          //Инструменты

    }
}
/*************** СТИЛИ ДЛЯ АДМИНКИ + УБИРАЕМ ПОДПУНКТЫ МЕНЮ WOOcommerce **************/

/*************** СКРЫВАЕМ woocommerce addons для всех **************/
add_filter('woocommerce_show_addons_page', '__return_false');

/*************** СКРЫВАЕМ подпункты для роли shop manager **************/
add_action( 'admin_menu', 'woo_remove_admin_submenus', 999 );
function woo_remove_admin_submenus() {
    global $user_ID;
    if ( current_user_can( 'shop_manager' ) ) {
        remove_submenu_page( 'woocommerce', 'wc-status' ); //для статуса
        remove_submenu_page( 'woocommerce', 'wc-settings' ); //для настройки
        }
}
/*************** css для админки для роли shop manager **************/
function gb_custom_css_admin() {
    // чтобы отображать эти стили только рядовым пользователям, раскомментируйте строку ниже и строку в конце кода
    // можно также изменить user на admin, чтобы отображать код наоборот только администраторам
    if( current_user_can( 'shop_manager' ) ):
        echo PHP_EOL . '<style type="text/css">
            /* убираем пункт меню yith plugins для пользователя с ролью shop_manager */
            #toplevel_page_yit_plugin_panel {display: none;}
            /* убираем "настройки" для пользователя с ролью shop_manager */
            #screen-options-link-wrap {display: none;}
            /* убираем "помощь справа вверху" для пользователя с ролью shop_manager */
            #contextual-help-link-wrap {display: none;}
            #wpfooter {display: none;}
            /* убираем "сменить пароль" для пользователя с ролью shop_manager */
            tr#password {display: none;}
            .categorydiv div.tabs-panel {
            max-height: 400px;
            }
        </style>' . PHP_EOL;
    endif;
        echo PHP_EOL . '<style type="text/css">
            /* Высота дива категорий в админке карточки товара */
            #product_cat-all {
            max-height: 400px;
            }
        </style>' . PHP_EOL;
}
add_action('admin_head', 'gb_custom_css_admin');
Выглядеть будет так :
Примерно тоже самое, но вместо Админка -> Товары, нужно дать ему доступ только в Админка -> Страницы.
 
Если бы все так просто, - остаются все равно не защищенные места для не опытных владельцев.
Сколько раз уже клиенты сайты свои вешали - не пересчитать, звонят потом - помоги.
 
Назад
Сверху