Как отключить админ-панель на сайте или в админке WordPress 3.3+

Здравствуйте, уважаемые посетители и гости нашего ресурса. Сегодня я поговорю возможно не о новой, но всё же такой важной теме, как верхняя админ-панель на нашем любом движке WordPress. Бывали ли случаи, когда вы задавались вопрос, как убрать админ-панель на WordPress?

1.Первый способ

и самый простой, но не самый эффективный ( почему — объясню ниже ) это зайти в админ-интерфейс, далее «Пользователи -> Ваш профиль» и снять галку
с «Показывать верхнюю панель при просмотре сайта». Ниже скриншот для наглядности:

Почему способ не самый эффективный? Всё просто — с новой версией WordPress это опция лишь работает и существует для просмотра самого сайта и для каждого пользователи в частности. Соотвественно в админке панель всё также будет работать.

2.Второй способ

Убираем панель из админки WordPress

Тут нам уже придется покумекать и использовать небольшую уже написанную добрыми людьми для нас PHP функцию:

if (!function_exists('disableAdminBar')) {

	function disableAdminBar(){

  	remove_action( 'admin_footer', 'wp_admin_bar_render', 1000 );

    function remove_admin_bar_style_backend() {
      echo '<style>body.admin-bar #wpcontent, body.admin-bar #adminmenu { padding-top: 0px !important; }</style>';
    }

    add_filter('admin_head','remove_admin_bar_style_backend');

  }

}

add_filter('admin_head','remove_admin_bar_style_backend');

В двух словах, о том, что значит данный код.
В начале проверяется проверка не существует ли функция disableAdminBar, далее удаляется рендеринг отображение админ-панели из футера в админке, ну и последнее — это удаление стилей, благодаря которым происходит отступ сверху для нашей неказистой панели. Функцию нужно добавить в конец файла functions.php вашего шаблона.

Убираем панель при просмотре сайта

Встаёт другой вопрос, как одновременно убрать у всех пользователей, выполнивших вход на сайт, верхнюю админ-панель при просмотре сайта. Опять же используем функцию, всё так же написанные добрыми людьми для нашего с вами счастья:

if (!function_exists('disableAdminBar')) {

	function disableAdminBar(){

  	remove_action( 'admin_footer', 'wp_admin_bar_render', 1000 ); // for the admin page
    remove_action( 'wp_footer', 'wp_admin_bar_render', 1000 ); // for the front end

    function remove_admin_bar_style_backend() {  // css override for the admin page
      echo '<style>body.admin-bar #wpcontent, body.admin-bar #adminmenu { padding-top: 0px !important; }</style>';
    }

    add_filter('admin_head','remove_admin_bar_style_backend');

    function remove_admin_bar_style_frontend() { // css override for the frontend
      echo '<style type="text/css" media="screen">
      html { margin-top: 0px !important; }
      * html body { margin-top: 0px !important; }
      </style>';
    }

    add_filter('wp_head','remove_admin_bar_style_frontend', 99);

  }

}

// add_filter('admin_head','remove_admin_bar_style_backend'); // Original version
add_action('init','disableAdminBar'); // New version

По сути в данном коде выполняется всё тоже самое, что и для админки WordPress. Код также вставляем в файл functions.php

Собственно на этом наши с вами махинации окончены, можно наслаждаться результатом стой нелёгкой проделанной работы =)


Понравилась статья? Расскажи друзьям

Нас ищут по следующим запросам:

    Ошибка базы данных WordPress: [Table 'u2670440_default.wp_referers' doesn't exist]
    SELECT url, sum(hits) as sum_hits FROM wp_referers WHERE not (search like '%??%') GROUP BY url ORDER BY sum_hits desc LIMIT 0, 16

Вы можете оставить комментарий, или ссылку на Ваш сайт.