Как создать плагин для Dle 13.0 и выше

Постер к публикации Как создать плагин для Dle 13.0 и выше

Как создать плагин для Dle 13.0 и выше

Datalife Engine совсем недавно подготовили очень интересное обновление которое в корне изменило процесс миграции доработок сайта (плагинов, модулей) на более новые версии движка. Наконец-то система позволяет буквально упаковывать доработки кода в отдельные XML файлы без необходимости редактирования кода. Если вы хотите узнать как создать плагин для DLE 13.0 и выше, то внимательно переходим к технической части:

Плагин DLE - это модернизация существующего кода или дополнительный функционал системы управления сайтом Datalife Engine (DLE), упакованный в XML файл для последующей миграции на другие версии движка, а также не требующий какие-либо изменения оригинальных файлов.

Начало создания плагина


1. Создание модуля начинается с генерации XML файла содержащего в себе список тех или иных изменений исходного кода. Для этого необходимо выполнить переход в раздел "Управление плагинами" > "Добавить плагин".

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

- Действия в файлах
- Действия в MYSQL

Чтобы Вы понимали, XML записывает все необходимые действия с файлами и MYSQL которые Вы ему сообщаете. Через FTP больше не нужно редактировать файлы, просто загружаете готовый плагин или создаёте свой, а затем Вы можете его распространять как готовый XML файл по своим сайтам, а также делиться им у нас на сайте. Однако опыт разработки с DLE вам обязательно потребуется.

Пишем тестовый плагин для DLE 13.0 и выше


Попробуем написать тестовый плагин! Давайте сделаем какую-нибудь приятную мелочь? Я предлагаю изменить стандартную надпись названия админ-панели в шапке с Datalife Engine на название своего сайта.

Имя плагина: Название сайта в шапке Админ-Панели
Описание плагина: Добавляем название сайта в шапку админ-панели.
Версия: 1.0
Совместимость: 13.0 и выше

Далее переходим во вкладку "Действия в файлах" и добавляем следующие действия:

Файл: engine/skins/default.skin.php
Действие: Найти и заменить
Найти:

<a class="navbar-brand" href="?mod=main">DataLife Engine</a>

Заменить на:

<a class="navbar-brand" href="?mod=main">{$lang['skin_title']} {$domain_name}</a>

Действие: Найти и добавить ниже
Найти:

$profile_link = $config['http_home_url'] . "user/" . urlencode ( $member_id['name'] ) . "/";

Добавить ниже:

// Обработка названия панели управления
$domain_name=$config['http_home_url'];
$domain_name=str_replace("https://", "", $domain_name);
$domain_name=str_replace("http://", "", $domain_name);
$domain_name=str_replace("/", "", $domain_name);
$domain_name=ucfirst($domain_name);


Сохраняем созданный нами плагин и видим, что теперь в шапке Админ-Панели указано не Datalife Engine, а "Управление сайтом Adress.domain".

Что я могу изменить на сайте с помощью создания плагина?


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

- Доработка системы репутации
- Написание функционала интернет-магазина
- Импорт / Экспорт данных
- Синхронизация с API CRM, платежных систем, сервисов
- Мониторинг игровых серверов

Если будут какие вопросы по теме - обязательно задавайте, я с радостью Вам помогу и подскажу по мере своих знаний и опыта!
 
3 651 2 1

Комментарии и отзывы (2)

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
  1. Пользователь Abolfazl edalati
    Abolfazl edalati, 31 октября 2018 21:11
    Гости
    привет

    Я хочу сделать плагин, когда дело доходит до темы

    {GoogleMap}

    Было установлено, что карта Google будет видна на той части сайта

    (Без прямого вставки в тему)

    Это действие будет выполнено через плагин и просто введите слово {GoogleMap} в форме вручную
    1. Пользователь Sheckler
      Sheckler, 31 октября 2018 22:15
      Автор проекта
      Привет,

      Не совсем понятно что имеется ввиду под GoogleMap.
      Если вы планируете выводить карту с меткой по указанному адресу автоматически (предварительно указав лишь сам адрес), то это стандартный геокодер. Его можно использовать даже обычным подключением файла скрипта с указанием &adress=ADRESS, то есть стандартный include file="script.php?adress=ADRESS" не интегрируя как отдельный плагин.

      Но можно также реализовать и как отдельный плагин DLE, главное понимать откуда будет браться информация об адресе и является ли она статичной.