Движок Joomla уникальный в своём роде. Те, кто пользуются им достаточно давно, понимают, что он состоит из множества частей отвечающих за разное выполнение действий. Подобно Lego, наша CMS собрана из деталей и каждая деталь для чего-то требуется. При сильном желании можно найти это в панели и убрать. При этом детали нашего конструктора могут быть как внутренними (системными), так и внешними, и всё это можно настроить (изменить, удалить, установить). Так вот, сегодня речь пойдёт о стартовой страницы панели управления Joomla 3.x. Перед тем как мы создадим для неё модуль, для начала разберёмся, что же вообще можно сделать с этой страницей. Новичков удивит, но то, что вы видите на ней, абсолютно каждый элемент можно изменить. Опытные программисты смогут даже структуру внешнего вида поправить, но для этого требуется хорошее знание кода и самой CMS. Однако мы станем говорить о возможностях доступных каждому.

Панель управление делиться на несколько частей и состоит из следующих модулей:

Создание модуля для панели управления в Joomla 3

1. Admin Menu – верхнее меню, думаю всем понятно, зачем оно нужно. Но мало кто знает, что все ссылки и расположение пунктов можно менять. За вывод ссылок хоть и отвечает модуль Admin Menu, но вы ведь можете создать свой вместо него и написать там что угодно.

Панель управление делиться на несколько частей

2. User Status – нижняя панель статистики. В ней так же находиться модуль Joomla Version, он показывает используемую версию движка справа. Мне кажется, эта самый бессмысленный элемент в панели, за исключением статистики посетителей. Было бы куда удобней видеть эту информацию, где не будь, повыше.

Admin Menu

3. Title – единственное предназначение этого элемента, сообщать место, где вы находитесь. Ну, ещё справа находиться логотип. Может показаться, что он не нужен, но благодаря Title, создать уникальный стиль панели управления становиться лёгкой задачей. Представьте, что на этом месте фирменный цвета вашей компании и собственный логотип. Скажите пустяк, но всё равно приято.

Title

4. Toolbar – это панель инструментов. Используется часто и те, кто привык к её обычному расположению, скорее всего не станут в ней что-то менять.

Toolbar

5. Quick Icons – панель быстрого доступа (на картинке слева). Не знаю как остальным, но для меня она бесполезна, всё равно пользуюсь верхним меню.

6. Область на картинке справа – в данный момент там установлены три модуля Popular Articles, Recently Added Articles и Site Information. Количество размещённых элементов в ней не ограничено, но, к сожалению joomla предлагает мало стандартных модулей для установки в этом месте. Да и те, что имеются в наличии, хорошими трудно назвать. Вот поэтому мы и рассмотрим создание модуля для этой области.

Popular Articles, Recently Added Articles

Все эти части, как я и говорил выше, настраиваются. Для того чтобы изменить внешний вид панели, или настроить отдельный модуль, перейдите в «Панель управления – Менеджер модулей – слева выбрать панель управления».

Менеджер модулей – панель управления

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

Создание модуля для панели

Теперь поговорим о том, как же создаются они. Сделать модуль оказалось просто. Достаточно создать два файла в специально отведённом для этого месте, после чего найти его через амин панель, установить и настроить. Наш модуль будет показывать текстовые ссылки на сторонние ресурсы, которые мы сами же будем добавлять.

И так, создаём папку mod_mymodule, внутри которой должны располагаться два файла - mod_mymodule.xml, mod_mymodule.php. Эти файлы создаём при помощи знакомой нам программы NotePadd++.

Создание модуля для панели

Открываем mod_mymodule.xml и вставляем это:

XML код:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <extension type="module" version="3.6" client="administrator" method="upgrade">
  3. <name>Мой модуль</name>
  4. <author>WebDesign</author>
  5. <creationDate>august 2016</creationDate>
  6. <copyright>Copyright (C) 2016. All rights reserved.</copyright>
  7. <license>Public License</license>
  8. <authorEmail>Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.</authorEmail>
  9. <authorUrl>www.author.ru</authorUrl>
  10. <version>1.0.0</version>
  11. <description>Модуль для панели управления.</description>
  12. <files>
  13. <filename module="mod_mymodule">mod_mymodule.php</filename>
  14. </files>
  15. <config>
  16. <fields name="params">
  17. <fieldset name="basic">
  18. <field name="texturl1" class="" type="text" default=""
  19. label="Текст ссылки 1"
  20. description="Название ссылки 1." />
  21. <field name="cPanel-Link1" type="url" default=""
  22. label="Установить ссылку 1"
  23. description="Вставте сюда url страницы."
  24. filter="string" />
  25.  
  26. <field name="texturl2" class="" type="text" default=""
  27. label="Текст ссылки 2"
  28. description="Название ссылки 2." />
  29. <field name="cPanel-Link2" type="url" default=""
  30. label="Установить ссылку 2"
  31. description="Вставте сюда url страницы."
  32. filter="string" />
  33.  
  34. <field name="texturl3" class="" type="text" default=""
  35. label="Текст ссылки 3"
  36. description="Название ссылки 3." />
  37. <field name="cPanel-Link3" type="url" default=""
  38. label="Установить ссылку 3"
  39. description="Вставте сюда url страницы."
  40. filter="string" />
  41.  
  42. <field name="texturl4" class="" type="text" default=""
  43. label="Текст ссылки 4"
  44. description="Название ссылки 4." />
  45. <field name="cPanel-Link4" type="url" default=""
  46. label="Установить ссылку 4"
  47. description="Вставте сюда url страницы."
  48. filter="string" />
  49. </fieldset>
  50. </fields>
  51. </config>
  52. </extension>

Это файл настроек модуля, он мало чем отличается от templateDetails.xml расположенного в каждом шаблоне. Благодаря написанному коду, joomla определяет, что это системный модуль для панели управления. Здесь указаны: название, версия, описание, файлы, находящиеся в папке и т.д. Всё что между тегами <fieldset> это настройки. Правила создания настроек точно такие же, как и для файла templateDetails.xml.

В файл mod_mymodule.php вставляем следующий код:

PHP код:
  1. <?php
  2. defined( '_JEXEC' ) or die( 'Restricted access' );
  3.  
  4. if ($params->get('texturl1')){
  5. $TextUrl1 = '' . $params->get('texturl1') . '';}
  6. if ($params->get('texturl2')){
  7. $TextUrl2 = '' . $params->get('texturl2') . '';}
  8. if ($params->get('texturl3')){
  9. $TextUrl3 = '' . $params->get('texturl3') . '';}
  10. if ($params->get('texturl4')){
  11. $TextUrl4 = '' . $params->get('texturl4') . '';}
  12. ?>
  13.  
  14. <?php if ($params->get('cPanel-Link1')){
  15. echo '<a href="' . $params->get('cPanel-Link1') . '">' . $TextUrl1 . '</a>';}
  16. else {
  17. echo $TextUrl1;} ?>
  18. <br>
  19. <?php if ($params->get('cPanel-Link2')){
  20. echo '<a href="' . $params->get('cPanel-Link2') . '">' . $TextUrl2 . '</a>';}
  21. else {
  22. echo $TextUrl2;} ?>
  23. <br>
  24. <?php if ($params->get('cPanel-Link3')){
  25. echo '<a href="' . $params->get('cPanel-Link3') . '">' . $TextUrl3 . '</a>';}
  26. else {
  27. echo $TextUrl3;} ?>
  28. <br>
  29. <?php if ($params->get('cPanel-Link4')){
  30. echo '<a href="' . $params->get('cPanel-Link4') . '">' . $TextUrl4 . '</a>';}
  31. else {
  32. echo $TextUrl4;} ?>

Он отвечает за показ самого модуля и то, что в нём находится. В данном случае, идёт проверка параметров из mod_mymodule.xml, если поля заполнены, выводится текст из них. Структура бывает сложная – дополнительные папки, скрипты, стили оформления и т.д. Но для работы простого модуля достаточно всего два этих файла.

После того как мы подготовили папку, открываем программу FileZilla и бросаем её в директорию …/administrator/modules/.

открываем программу FileZilla

В панели управления переходим в «Расширения – Менеджер расширения - Поиск».

Менеджер расширения - Поиск

При открытии страницы, если всё правильно сделано, Joomla самостоятельно должна найти и добавить в список наш элемент. Выберите его и нажмите на кнопку «Установить» вверху.

Кнопка Установить

Но и это ещё не всё, необходимо создать «Мой модуль» в панели и установить в позицию cpanel. Переходим в «Расширения – Менеджер модулей – выбираем Панель управления», нажимаем на «Создать». В списке ищем наше название и выбираем его:

Расширения – Менеджер модулей

В открывшейся странице заполняем заголовок, устанавливаем позицию cpanel, пишем ссылки и в конце сохраняемся (показывать заголовок или нет, по желанию).

Устанавливаем позицию cpanel

Если вы сейчас перейдёте на стартовую страницу административной панели, то увидите вверху созданный нами элемент. Вот как он выглядит:

Созданный элемент (модуль)

Заключение

Таким образом, любой администратор может создать под личные нужды свой собственный модуль. При этом движок предлагает права доступа, а это означает, что модуль легко скрыть от посторонних глаз. Кстати, точно по такому же принципу создаются модули для других позиций. Вы можете в папке «modules» на сервере взять за основу стандартный модуль, сделать копию и изменить её, так как вам необходимо.


 
4.6785714285714 1 1 1 1 1 (Оценок: 280)
4.6785714285714 280
Опубликовано: 17-10-2016

Вы не зарегистрированы, чтобы оставлять комментарии.