Развернутое главное меню админ панели.

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

Vitaly
Аватара
Vitaly
Репутация: 20
Сообщения: 109
Зарегистрирован: 15.08.2016
С нами: 7 лет 7 месяцев

Сообщение #1 Vitaly » 20.08.2016, 12:03

Ощутимо не хватало быстрого доступа ко всем основным страничкам админки из главного меню. Не могу сказать, что это недоработка разработчиков, просто мне хотелось такую мелочь.
В голову пришел скрипт jQuery. Делюсь, может еще есть такие как я.
Почему JavaScript? - Не нужно править код шаблона, только добавить скрипт, как следствие включается и отключается по надобности эта штука очень быстро - комментированием или раскомментированием одной строки или удалением скрипта из файла.

Код: Выделить всё

<style>
.submen{
   background: #3b576d;
   border-bottom: 1px solid #384956;
   padding-left: 15px !important;
}
.submen:hover{
   background: #33424e;
   color: #e8e8e8 !important;
}
</style>
<script>
$(window).on('load', function() {
   $('#main_menu').find('a').after(function(indx){
      if($(this).attr('href') == 'index.php?module=ProductsAdmin')
         return '<a class="submen" href="/backend/index.php?module=ProductsAdmin">Товары</a><a class="submen" href="index.php?module=CategoriesAdmin">Категории</a><a class="submen" href="index.php?module=BrandsAdmin">Бренды</a><a class="submen" href="index.php?module=FeaturesAdmin">Свойства</a>';
      
      else if($(this).attr('href') == 'index.php?module=OrdersAdmin')
         return '<a class="submen" href="/backend/index.php?module=OrdersAdmin&amp;status=0">Новые</a><a class="submen" href="/backend/index.php?module=OrdersAdmin&amp;status=1">Приняты</a><a class="submen" href="/backend/index.php?module=OrdersAdmin&amp;status=2">Выполнены</a><a class="submen" href="/backend/index.php?module=OrdersAdmin&amp;status=3">Удалены</a>';
      
      else if($(this).attr('href') == 'index.php?module=UsersAdmin')
         return '<a class="submen" href="index.php?module=GroupsAdmin">Группы</a><a class="submen" href="index.php?module=CouponsAdmin">Купоны</a>';
      
      else if($(this).attr('href') == 'index.php?module=PagesAdmin')
         return '<a class="submen" href="/backend/index.php?module=PagesAdmin&amp;menu_id=1">Основное меню</a><a class="submen" href="/backend/index.php?module=PagesAdmin&amp;menu_id=2">Другие страницы</a>';
         
      else if($(this).attr('href') == 'index.php?module=CommentsAdmin')
         return '<a class="submen" href="index.php?module=FeedbacksAdmin">Обратная связь</a>';
         
      else if($(this).attr('href') == 'index.php?module=ImportAdmin')
         return '<a class="submen" href="index.php?module=ImportAdmin">Импорт</a><a class="submen" href="index.php?module=ExportAdmin">Экспорт</a>';
         
      else if($(this).attr('href') == 'index.php?module=ThemeAdmin')
         return '<a class="submen" href="index.php?module=ThemeAdmin">Тема</a><a class="submen" href="index.php?module=TemplatesAdmin">Шаблоны</a><a class="submen" href="index.php?module=StylesAdmin">Стили</a><a class="submen" href="index.php?module=ImagesAdmin">Изображения</a><a class="submen" href="index.php?module=ScriptsAdmin">Скрипты</a>';
         
      else if($(this).attr('href') == 'index.php?module=SettingsAdmin')
         return '<a class="submen" href="index.php?module=CurrencyAdmin">Валюты</a><a class="submen" href="index.php?module=DeliveriesAdmin">Доставка</a><a class="submen" href="index.php?module=PaymentMethodsAdmin">Оплата</a><a class="submen" href="index.php?module=ManagersAdmin">Менеджеры</a><a class="submen" href="index.php?module=LanguagesAdmin">Языки</a><a class="submen" href="index.php?module=TranslationsAdmin">Переводы</a>';
      else
         return '';
   });
});
</script>

Установка: проще всего скопировать весь код и вставить в шаблон, например в начало файла \backend\design\html\left.tpl
Но лучше конечно отдельным файлом подключить.
Делалось для OkayCMS 1.2.1 версии Lite, по этому подменю для заблокированных в ней пунктов из PRO версии не выводятся. Не выводятся ссылки в подменю на те табы, что имеют идентичное название с родительским пунктом. Я считаю, что нет смысла их дублировать.
Результат у меня выглядит примерно так так: http://piccy.info/view3/10184723/67e6c5b90cbcb82e026e238943227094/orig/

OkayCMS M
Администратор
Аватара
OkayCMS M
Администратор
Репутация: 216
Сообщения: 1627
Зарегистрирован: 12.11.2015
С нами: 8 лет 4 месяца
Сайт Skype

Сообщение #2 OkayCMS » 20.08.2016, 17:45

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

Vitaly
Аватара
Vitaly
Репутация: 20
Сообщения: 109
Зарегистрирован: 15.08.2016
С нами: 7 лет 7 месяцев

Сообщение #3 Vitaly » 20.08.2016, 19:07

Ага, будем ждать)
Когда делал скрипт, заметил ошибку с выводом табов в шаблоне.

Идем в пункт меню "Шаблоны" и видим табы:
Тема Шаблоны Стили Изображения Скрипты
нажимаем - "скрипты" и последние два меняются местами:
Тема Шаблоны Стили Скрипты Изображения


Название раздела: Полезные решения для OkayCMS
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Полезные решения для OkayCMS»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 19 гостей