Апр
24
22

Упрощаем админку wordpress

Недавно заказали мне разработку блога на wordpress – купил хостинг, домен, договорились по тз и я начал работу. После установки системы и добавления парочки плагинов сложилась неприятная ситуация, когда админка начала глючить, отказывалась загружать некоторые пункты меню с настройками и т.п. Это были последствия ограничений хостинга и нехватка памяти для выполнения тех или иных скриптов. Забегая наперед скажу, что все удалось решить путем увеличения memory_limit для wordpress, о чем я уже писал ранее. Но перед этим я решил немного поэкспериментировать с настройками админки системы и сделать ее «легче» дабы загрузка не требовала много памяти.

Первым делом появилось желание «подправить и облегчить» Dashboard (доску объявлений или консоль), где выводится последняя и общая информации по блогу – посты, комментарии, блок быстрой публикации, а также новости wordpress. Вместо того чтобы хорошенько подумать, а начал копать информацию из интернета и гуглить по поводу «Лайт» версии. Перечитал с десяток статей, нашел некий Dashboard Lite, а потом вспомнил, что ведь в новых версиях системы есть возможность настраивать внешний вид:

настройка админки вордпресс

Как говорят в таких случаях – «а ларчик просто открывался»:) Единственное, что можно добавить в этом случае – Clean Options. Он позволяет удалить из базы данных информацию, которая импортируется и сохраняется из RSS каналов для вашего Dashboard. Плюс кое-что можно реализовать через другие плагины для WordPress панели.

google gearsТакже для ускорения работы и, возможно, уменьшения потребления памяти хостера мне советовали поставить google gears. Это open sourse приложение, которое добавляет в браузер некоторые дополнительные особенности и позволяет работать «требовательными к ресурсам» веб проектами. В результате часть информация хранится локально, JavaScript запускаются как-то там в background`е чтобы увеличить быстродействие и т.п. В общем, суть в том, что для начала нужно будет установить это приложение с официального сайта, а затем в меню wordpress инструменты его активировать.

wordpress турбо

Если у вас еще не установлен google gears, то в админке wordpress сверху будет ссылочка «Турбо», которая ведет на сайт установки. Собственно, данный метод мне все равно не помог как-либо разобраться с глюками админки.

Еще я находил в сети плагины, которые позволяли настраивать меню админки wordpress, удаляя из него ненужные пункты. В принципе, я не собирался с этим экспериментировать, так как был уверен, что скрытие определенных пунктов меню путем установки дополнительного модуля уж точно мне не поможет. А чуть позже я нашел хаки как сделать это без плагина и все же решил попробовать. Кстати, в работе нам пригодится описанный ранее файл функций темы functions.php для wordpress. Открываем его и добавляем следующий код:

<?php
function remove_submenu() {
global $submenu;
//var_dump($submenu['themes.php']);
unset($submenu['index.php'][0]);
unset($submenu['index.php'][1]);
//unset($submenu['edit.php'][5]);
unset($submenu['edit.php'][51]);
unset($submenu['edit.php'][52]);
unset($submenu['edit.php'][53]);
unset($submenu['edit-pages.php'][5]);
unset($submenu['edit-pages.php'][10]);
unset($submenu['link-manager.php'][5]);
unset($submenu['link-manager.php'][10]);
unset($submenu['link-manager.php'][15]);
unset($submenu['themes.php'][5]);
unset($submenu['themes.php'][7]);
unset($submenu['themes.php'][15]);
unset($submenu['users.php'][5]);
unset($submenu['users.php'][10]);
unset($submenu['users.php'][15]);
}
 
function remove_menu() {
global $menu;
//remove post top level menu
unset($menu[10]);
}
add_action('admin_head', 'remove_menu');
add_action('admin_head', 'remove_submenu');
 
?>

Внимание! Советую также глянуть статью Как убрать пункты меню в WordPress которую я написал спустя несколько лет. Этот материал будет поновее.

А теперь, собственно, парочка комментариев к примеру выше. Функция remove_submenu удаляет подпункты в разделах меню. Как видите они имеют вид массива, то есть, например, строки unset($submenu[‘edit-pages.php’][5]) и unset($submenu[‘edit-pages.php’][10]) убирают из раздела «Страницы» пункты «Изменить» и «Добавить новую». Зачем это нужно? – просто когда вы кликаете по названию раздела «Страницы» то попадаете в раздел, где можно их редактировать и создавать. По сути, подпункты не нужны. Так вот в этих двух записях ячейки массива с номером 5 и 10 отвечают за соответствующие подпункты. Чтобы узнать какие бывают еще я использовал функцию var_dump($submenu[‘themes.php’]), что выводила весь массив в самом начале html страницы. Потом, конечно, ее нужно закомментировать. Вторая часть кода функция remove_menu() используется для удаления целых пунктов меню – в данном примере я убрал раздел «Мультимедиа».

Упрощение админки удалось, вот только работать шустрее она от этого не стала и соответственно глюки при загрузке некоторых страниц остались. В общем, если что нужно все же копать в сторону memory_limit, остальные «маневры» походу дают минимальный эффект. Если же вам нужно ускорить сайт, то там нужно обратить внимание на оптимизацию WordPress header, кеширование, вес картинок и другие фишки.

P.S. Постовой. Встречайте новый полезный проект — SEO Помощник для вебмастеров.

рейтинг Оцените статью:
Ужасная статьяНичего интересногоТак себеНормальноХорошоКлассный постВ закладки!
(голосов - 1, средний балл: 5,00 из 7)
Загрузка...

категория Категории: Возможности; Плагины; Хаки и секреты;
теги Теги: , , , , , .

комментария 22 к статье “Упрощаем админку wordpress”

  • lilumi   24.04.2010

    существенно облегчить админку можно с помощю двух плагинов:
    Adminimize : http://wordpress.org/extend/plugins/adminimize/ и
    Admin Trim Interface (не хочу постить ссылку, потому что знаю, что уйдет тогда комент на модерацию)
    Я эти плагины использую, чтобы заказчикам отдать сайт с максимально упрощенной админкой, чтобы ничего лишнего не наклацали. :)

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

  • Евгений   24.04.2010

    Не советую использовать Gears, т.к. это очень глючная вещь. Лично я от неё отказался + Google официально заявил о прекращении её поддержки

  • Tod   24.04.2010

    lilumi, хе-хе, я как раз надеялся, что ты прокомментируешь и подскажешь что-то по делу. Спасибо!
    Правильно ли я понимаю, что lite файл перевода от Лекактуса нужен только тогда, когда ты используешь его сборку? То есть если я ставлю английскую админку, то и смысл в этом лайте пропадает.

  • Dimox   24.04.2010

    Тоже, пожалуй, уберу у себя все ненужное. Спасибо за информацию.

  • lilumi   24.04.2010

    нет, lite файл перевода можно использовать на любом вордпрессе, который хочешь, чтобы был на русском языке для посетителей. А если сайт вообще не будет использовать файл перевода (то есть будет на английском, кроме тех моментов, где ты явно в теме укажешь русские слова) то действительно файла lite перевода и не нужно совсем.

  • danila   26.04.2010

    Подскажите, пожалуйста. Я установил два плагина wp-ban и hyper cache. Думаю все вы их знаете.

    Так вот спустя пару дней я столкнулся с ситуацией что забанил сам себя. И дело не в том, что я указал неверный ИП для бана, а просто зашел забаненый ИП на сайт и страница, которая показывалась ему (You are banned), закэшировалась.

    Кто подскажет как правильно решить подобную проблему? Как заабнить только нужный ИП а что бы другим не было бана не при каких обстоятельствах? Спасибо.

  • Беркут   27.04.2010

    Обязательно попробую названные плагины, тяжесть админки порядком уже достала! :)

  • Андрей Кочуров   28.04.2010

    Я тоже изголялся раньше, что бы убрать тормоза админки. Потом терпение кончилось и перешел на виртуальный выделенный сервер. И админка летает, и сайт шустрее работает. А в свете того, что поисковики ранжирят сайты и по скорости загрузки — переход с обычного хостинга, это гуд.

  • RodgerFox   02.05.2010

    А я использую супер кэшь и под корень рублю все не нужное)
    Но с плагинами попробую, обязательно. Большое спасибо.

  • vg   27.05.2010

    danila, зайди через фтп или спанель и удали этот плагин, или лучше залезть в базу данных через спанель и ручками исправить.

  • Алексей   10.07.2010

    Ппц,гугл отказался от сапорта этой вещицы… :(

  • higimo   04.08.2010

    Очень не понравилось, что говориться о плагинах каких-то, а сылки на плагины не присутствуют… Нам их самим искать? Я конечно все понимаю, но это не кошерно для такого блога…

  • VRS   24.08.2010

    я использую Admin Drop Down Menu, он добавляет в субменю «профиль» ссылку выход, но она почему-то не показывается у простого подписчика. как включить этот пункт?

    array(4) { [5]=> array(3) { [0]=> string(40) «Авторы и пользователи» [1]=> string(10) «edit_users» [2]=> string(9) «users.php» } [10]=> array(3) { [0]=> string(29) «Добавить нового» [1]=> string(12) «create_users» [2]=> string(12) «user-new.php» } [15]=> array(3) { [0]=> string(21) «Ваш профиль» [1]=> string(4) «read» [2]=> string(11) «profile.php» } [16]=> array(4) { [0]=> string(10) «Выйти» [1]=> int(1) [2]=> string(21) «ozh_admin_menu_logout» [3]=> string(10) «Выйти» } }

    думаю надо капать в эту сторону, но никак не могу подобрать код:

    function add_submenu() {
    global $submenu;
    //var_dump($submenu[‘users.php’]);
    $submenu[‘user.php’][16]; — вот что тут должно быть? Подскажите, пожалуйста.
    }
    add_action(‘admin_head’, ‘add_submenu’);

  • Николай   25.07.2011

    Помогите!
    Wordpress 3.1
    Стоит такая задача:
    — админом будут регистрироваться пользователи. Они будут вести что-то наподобие своего блога.
    Для каждого пользователя будет заводиться свой раздел.
    — надо что бы конкретный пользователь мог писать только в свой раздел. И при этом лучше, чтобы он другие разделы и не видел.

    Может для такого есть плагины?

  • Tod   27.07.2011

    Николай, название плагина точно не помню, но что-то такое встречал касательно разделения прав пользователей.

  • Николай   27.07.2011

    >Николай, название плагина точно не помню, но что-то такое встречал касательно разделения прав пользователей.
    Есть такие. Но они не делают так, чтобы конкретный пользователь мог писать только в конкретную категорию.
    Я посмотрел в ядре WP.. Вывод списка разделов идет в wp-admin/includes/meta-boxes.php
    функция post_categories_meta_box
    Самому сделать можно.
    Но как эту функцию подменить? Или как в неё внедриться, что бы код ядра не править?

  • Tod   28.07.2011

    Николай, насколько я помню, там были весьма большие разграничения прав, в том числе и по категориям, например вроде в Role Scoper есть по категориям. В общем, поискать что-то в стиле «user roles» или «user permissions». Самому делать будет крайне сложно дабы это органично, правильно и безопасно вписалось в ядро системы (а ведь потом придется ее еще и обновлять).

  • Николай   28.07.2011

    Спасибо Тоd.
    Поищу, попробую.

    Сейчас установил:
    Plugin Name: Role Manager
    Plugin URI: http://www.im-web-gefunden.de/wordpress-plugins/role-manager/

    С ним поразбираюсь.

  • Наталья   22.11.2012

    Начала искать плагин..который ограничивает права.
    Adminimize наиболее подходил.. но у него не работала сама фукнция включения некоторых полей wp-shop..
    то есть если я сужу с пользовательской точки зрения.. то члеовеку необходимо не все администрирование, а лишь записи, и плагин wp-shop, для редактирования заказов, который не включается.!
    подскажите, может быть у вас есть иное решение?

    спасибо!

  • Tod   22.11.2012

    Наталья, единственное что могу посоветовать — тестировать другие плагины с управлением правами пользователей, там вроде как их много есть. Сам с этим вопросом не сталкивался, поэтому подсказать точно не смогу.

  • Наталья   23.11.2012

    Много перепробовала.. нет ничего похожего Adminimize /////
    но он почему-то не работает!

  • Alexa   21.09.2015

    Хороший совет.
    А то было очень много лишнего. Убрал многое.

Оставить комментарий


Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!

Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:

Последние посты
Лучшее в категории
Облако тегов
Скажи свое мнение!

В чем основные плюсы Wordpress?

Посмотреть результаты

Загрузка ... Загрузка ...
Друзья проекта
Последние новости