Тарифы Услуги Сим-карты

Genesis intitle datalife engine панель управления. Настройка движка DataLife Engine. Общие настройки DLE

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

Итак, вы установили движок DLE на хостинг или локальный сервер. Как теперь попасть в админку DLE? Все просто, для этого достаточно обратиться к главной странице вашего сайта и дописать к адресу строку admin.php, после чего перейти по новому адресу. Например, адрес моего сайта — dle.loc, соответственно, админ панель DLE находится по следующему URL — dle.loc/admin.php

При попытке войти в админку DLE, мы вполне логично увидим форму авторизации, где должны ввести логин и пароль администратора, придуманные нами на этапе установки DLE. Давайте авторизуемся. После успешной авторизации мы попадаем в святая святых нашего сайта — панель управления DLE.

Стоит отметить, что админка DLE построена достаточно логично и интуитивно понятно. Если пытаться сравнивать с админками прочих CMS, то админка DLE будет чуть более сложна, чем админка WordPress, но более проста и понятна по сравнению с админкой Joomla. Внешний вид админ панели DLE также достоин похвалы, работать с админкой довольно приятно и удобно.

В правом верхнем углу мы можем увидеть данные по нашему профилю, где можно изменить E-mail, имя, пароль и прочие аналогичные данные. Также рядом есть доступ к двум наиболее часто используемым функциям при управлении сайтом — добавление новости и Редактирование новостей. Поскольку DLE — это новостной движок, то вполне логично, что функции управления новостей вынесены для удобного к ним обращения.

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

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

Давайте также изменим название сайта. Сделать это можно в разделе Настройки скрипта — Настройка системы. В поле Название сайта впишем желаемое название.

Теперь во вкладке браузера в качестве названия сайта мы увидим то, что нам нужно. Как видим, все действительно удобно, логично и понятно устроено в админке DLE. В следующих статьях мы познакомимся с другими возможностями DLE, ну а на этом текущую статью мы, пожалуй, будем завершать. Если вы хотите познакомиться с DLE поглубже и научиться создавать сайты на этом движке, тогда обязательно обратите внимание на наш курс . Ну а я на этом с вами прощаюсь. Удачи!

Здравствуйте. Данный топик хочу посветить созданию простейшего модуля для популярной CMS Datalife Engine . В России, как впрочем и в странах СНГ она пользуется достаточно большой популярностью, однако на хабре статей об этой cms почему-то до сих пор нету. Я попытаюсь исправить это недоразумение. В этой статье вы узнаете о том, как сделать простейший модуль для этой CMS, а также познакомитесь со структурой движка.

Введение

Хотелось бы отметить, что система пользуется спросом у сайтов развлекательной тематики. Оно и понятно, система проста в использовании, имеет достаточное количество модулей и шаблонов. Да и почти все нужное есть «из коробки». Однако бывает, что чего-нибудь не хватает. Эту проблему мы постараемся решить.

Почему DLE?

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

Структура

Для начала нам нужно знать кое-что о структуре движка. Нельзя творить на сервере бардак, поэтому мы будем хранить все в своих папках.

Модули для работы движка принято помещать в папку /engine/modules/ .

В папке /engine/inc/ находятся файлы панели администратора.

Начиная с версии 8.х появилось подключать модули прямо в шаблоне. Шаблон находится в папке /templates/имя_шаблона/. В этой папке есть файл main.tpl Это корневой файл шаблона, обычно в нем расположена основная структура шаблона. Обычно модуль можно подключить так:

{include file=«engine/modules/mod_category.php»}

Где mod_category.php – файл, находящийся в категории /engine/modules/. Думаю с этим все понятно, поехали дальше.

Давайте сделаем модуль для вывода последних комментариев с кэшированием. Для этого создадим файл в папке /engine/modules/ и назовем его mod_lastcomm.php Далее я привожу листинг кода этого файла с подробными комментариями.

Код

DATALIFEENGINE". Эта константа определяется в index.php и ее значение TRUE символизирует о том, что файл подключен с помощью include/require, а не просто запущен. */ if(!defined("DATALIFEENGINE")) { die("Hacking attempt!"); } /* Подключаем класс api, для того чтобы нам можно было использовать функции для работы с кэшем. */ include ("engine/api/api.class.php"); /* Пытаемся прочетать информацию, сохраненную в кэше с именем lastcomm. Рекомендую давать осмысленные имена всему тому, что мы сохраняем в кэше. По сути lastcomm – это файл в папке /engine/cache/, а 60 – это время жизни кэша в секундах. В данном случае, если с создания файла прошло больше времени, чем 60 секунд, то нам снова придется лезть в бд. */ $lastcomm=$dle_api->load_from_cache("lastcomm", 60); /* Проверяем – есть у нас кэш или нету. Если нету, то лезем в бд. */ if (!$lastcomm) { /* Собственно запрос в бд. Он выполняется с помощью функции класса $db. Константа PREFIX содержит префикс, указанный при установки cms. Названия столбцов названы вполне нормально, я думаю не нужно объяснять что они делают. Индефикатор запроса заносим в переменную $sql. */ $sql = $db->query("SELECT comments.post_id, comments.text, comments.autor, post.id, post.flag, post.category, post.date as newsdate, post.title, post.alt_name FROM " . PREFIX . "_comments as comments, " . PREFIX . "_post as post WHERE post.id=comments.post_id ORDER BY comments.date DESC LIMIT 0,20"); /* С помощью функции get_row() класса $db считываем последовательно каждую строку из результатов выборки. Информация заносится в массив $row с индексами равными именам полей таблиц */ while ($row = $db->get_row($sql)) { /* Если нужно обрезаем заголовок новости */ if (strlen($row["title"]) > 50) { $title = substr($row["title"], 0, 50)."..."; } else { $title = $row["title"]; } /* Формируем ссылку на профиль пользователя. Аналогично */ $aname=urlencode($row["autor"]); $name= "". $row["autor"] .""; /* Формируем текст комментария и если надо обрезаем его */ $text = htmlspecialchars($row["text"]); if (strlen($text) > 1024) $text= substr($text, 0, 1024)."..."; /* Формируем ссылку на новость. Массив $config содержит все настройки системы. В частности $config["http_home_url"] - это урл домена. */ $newslink = $config["http_home_url"].$row["post_id"]."-".$row["alt_name"].".html"; $hint = "onMouseover=\"showhint("$text", this, event, "");\""; $title = "".stripslashes($title).""; /* Итоговая запись для одного комментария */ $lastcomm.="От $name в новости:
$title

"; } $db->free(); /* Кэшируем полученные данные. Чтобы получше разобраться с функциями кэширования, откройте файл "engine/api/api.class.php" там отлично все закомментировано */ $dle_api->save_to_cache ("lastcomm", $lastcomm); } /* Выводим полученный результат */ echo $lastcomm; ?>

Заключение

Данный код полностью рабочий. И в нем конечно же есть недостатки. Например не проверяется для ссылок - включено ли ЧПУ. Или при переходе по ссылке на профиль пользователя мы попадаем сразу в его профиль, а не на окошечко jQuery с краткой информацией. Вообщем есть что доработать. Но все эти вещи не были включены сюда только по одной причине - не дать запутаться новичку. Также советую проанализировать другие файлы, например topnews.php. Если у вас возникнут вопросы по написанию модулей или вообще по системе - я с радостью отвечу на них.

На этом у меня все, если эта тема кому-нибудь покажется интересной, то я сделаю цикл статей про cms Datalide Engine (DLE).

Ах да, это моя первая статья на хабре, поэтому извините если что не так.

Были подготовлены и реализованы следующие изменения:

1. В состав дистрибутива включены три абсолютно новых шаблона. Данные шаблоны созданы с использованием HTML5 стандартов. Являются полностью адаптивными, как под декстопные браузеры, так и под планшеты и смартфоны. Также в верстке шаблонов активно использована векторная графика, что обеспечивает их качественное отображение на HiDPI (Retina) дисплеях.

2. Добавлен новый тип дополнительных полей для публикаций: "Загружаемое изображение". При данном типе поля, пользователю предлагается загрузить картинку для данной новости, которая будет выводится потом при показе новостей на сайте. Для данного типа поля вы можете задать такие параметры как ограничения на вес и размер картинки, нужно ли создавать для нее уменьшенную копию, размеры уменьшенной копии, накладывать ли на нее водяной знак. Тем самым с использованием данного типа поля облегчается процесс написания новостей, например, вы можете создать различные типы картинок (постеры, скриншоты и т.д.) и оформить их вывод в шаблоне, а при добавлении новостей останется лишь их только загрузить в один клик.

3. Добавлен новый тип дополнительных полей для публикаций: "Загружаемый файл". При данном типе поля, пользователю предлагается загрузить файл для данной новости, который потом будет скачиваться как вложение. В настройках данного поля вы можете задать расширения файлов, которые допустимы для данного поля при загрузке, а также максимальный вес, загружаемого файла. Тем самым с использованием данного типа поля облегчается процесс написания новостей, например, вы можете создать различные типы файлов, в том числе и картинки непосредственно для скачивания (обои в разных разрешениях) и оформить их вывод в шаблоне, а при добавлении новостей останется лишь их только загрузить в один клик.

4. Добавлен новый тип дополнительных полей для публикаций: "Переключатель "Да" или "Нет"". При написании новостей данный тип поля выводится в виде переключателя "Да" или "Нет" (Включено или Выключено). В качестве значения данное поле выводит "Да" или "Нет" в зависимости от того что было установлено при написании новости. Однако основное назначение данного поля - это управление тегами и . В случае если переключатель был включен, то теги текст выведут соответствующих текст, а теги текст уберут его, и наоборот. Тем самым при помощи данных дополнительных полей вы можете легко управлять выводимой информацией на сайте в шаблонах, применительно к каждой конкретной новости. Например, включать или отключать вывод каких-либо вкладок с описанием на странице, либо организовать вывод галерей со скриншотами или постерами и т.д.

5. Для дополнительных полей новостей, имеющих тип поля "Список" , добавлена возможность создавать отдельные значения, которые отображаются в списке при добавлении публикации, и те, которые отображаются на сайте после выбора пользователем в качестве значений. Для этого при добавлении поля, нужно использовать разделитель "|" в списке значений, например: Yes|Да. При написании новости, пользователю для выбора будет указан пункт Да, а на сайте будет выведено значение поля как Yes.

6. Для дополнительных полей профиля пользователей, имеющих тип поля "Список" , также добавлена возможность создавать отдельные значения, которые отображаются в списке при редактировании профиля, и те которые отображаются на сайте после выбора пользователем в качестве значений. Для этого при добавлении поля, нужно также использовать разделитель "|" в списке значений, например Yes|Да. При редактировании профиля, пользователю для выбора будет указан пункт Да, а на сайте будет выведено значение поля как Yes.

7. Существенно переработан и улучшен режим работы "Использовать как перекрестные гиперссылки" для дополнительных полей новости. В случае если поле имеет данную опцию, то поиск новостей по значению поля производится на основе полного совпадения данного значения у других новостей, а также совпадения именно данного конкретного поля. Например, если раньше вы создавали поле "Год выпуска", и задавали значение 2015, и при этом у вас было другое поле, в котором была, например, загружена картинка, в пути которой также было 2015, то старая система выводила обе новости, т.к. поиск осуществлялся исключительно по вхождению искомого слова. Что приводило к тому что показывались не совсем ожидаемые новости. Теперь же будут показаны только те новости, у которых именно поле "Год выпуска" будет иметь значение 2015. Никакие другие поля и их значения учитываться больше не будут, что позволяет более расширенно использовать дополнительные поля, для организации перекрестного связывания между собой. Например, по году выпуска, актерам, режиссерам и т.д. Новый тип поиска автоматически применяется только для новых добавляемых новостей. Если вы хотите, чтобы и старые существующие новости участвовали в данном поиске, то вам нужно будет в админпанели, в разделе "Перестроение публикаций", запустить перестроение новостей, и тем самым будет создан индекс значений полей и для старых существующих новостей.

8. Для основного шаблона (main.tpl) добавлена возможность вывода в нем дополнительных полей новостей при просмотре полной новости на сайте. Для этого в данном шаблоне вы можете использовать те же теги, что и для вывода дополнительных полей в шаблонах краткой и полной новости. Это теги: текст , текст и

9. Для шаблонов, поддерживающих вывод дополнительных полей новостей , добавлена поддержка новых тегов Текст , которые выводят текст заключенный в них, если значение дополнительного поля совпадает с указанным. А также добавлена возможность использования тегов Текст , которые выведут текст, если значение поля не совпадает с указанным. Где tagname это имя дополнительного поля, а tagvalue это его значение. Например, Мужской пол , данный тег выведет текст "Мужской пол" , если значению поля test будет установлено "m" при написании публикации. Это открывает большие возможности по созданию различных оформлений шаблонов в зависимости от значений полей, установленных при написании этих публикаций. Например, создав поле с типом "список", можно в зависимости от выбранного пункта, применить различное оформление.

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

11. При использовании авторизации на сайте с помощью социальных сетей , добавлена возможность для пользователей задать свой персональный логин для сайта, который будет в дальнейшем использоваться. Запрос логина осуществляется только в момент первой авторизации на сайте при помощи социальной сети и будет использоваться в дальнейшем автоматически. Данное нововведение будет полезно для посетителей вашего сайта, которые не хотят использовать данные, полученные автоматически из социальной сети, например, когда в качестве логина используется имя и фамилия пользователя.

12. Добавлена поддержка смайлов для HiDPI (Retina) мониторов. Для этого используется две копии смайлов, в обычном разрешении, и в высококачественном. В случае если монитор имеет обычную пиксельную плотность, то на нем выводится обычный смайлик, если монитор имеет HiDPI (Retina) плотность, то выводится его высококачественная копия. Определение и использование смайлов происходит в автоматическом режиме. Для этого вам нужно разместить в папке со смайлами две копии смайлика, например, с именем smile.gif для обычного смайла и [email protected] для HiDPI (Retina) смайла. В случае если копия смайла в высоком разрешении отсутствует, то будет использоваться во всех случаях вывод обычного смайла.

13. В состав дистрибутива включено 60 новых смайлов. Все они имеет поддержку HiDPI (Retina) дисплеев.

14. Добавлена автоматическая поддержка смайлов в формате.png. Поддержка осуществляется также в автоматическом режиме. Для этого нужно просто скопировать файлы в папку со смайлами с расширением.png и указать имя смайлика в настройках скрипта.

15. Добавлен новый глобальный тег:

{customcomments id="1,2,5-8" category="2,3,5-8" author="x" days="x" template="custom" available="global" from="0" limit="10" order="date" sort="desc" cache="yes"} который позволяет выводить комментарии в любом месте сайта в пользовательском формате. Данный тег является вспомогательным дополнительным выводом комментариев, и может, например, использоваться для вывода последних комментариев на главной странице сайта в блоке и т.д.

Данный тег может принимать следующие параметры:

id - список ID комментариев, которые вы хотите вывести, разделяются запятой без пробелов. Также вы можете указывать диапазон ID комментариев при помощи тире. Например, 1,4-8,11 выведет комментарии c ID 1, комментарии имеющие id c 4 по 8, а также с ID 11.

category - список ID категорий новостей, из которых производить выборку комментариев, разделяются запятой без пробелов. Также вы можете указывать диапазон категорий при помощи тире. Например 1,4-8,11 выведет комментарии из категории 1, категорий имеющих id c 4 по 8, а также из категории 11.

categoryexclude - полностью противоположен параметру category="список категорий" и позволяет вывести комментарии, новости которых не принадлежат указанным в параметре категориям. Например, {customcomments categoryexclude="2,7"} выведет все комментарии у новостей, которые не принадлежат категориям и id 2 и 7.

author - указывает логин автора комментария, при указании данного параметра будут выводится только комментарии указанного автора. Допускается перечисление через запятую нескольких авторов. Например, тег {customcomments author="admin" limit="5"} выведет 5 комментариев автора с логином "admin".

authorexclude - указывает логины авторов, которые необходимо исключить из показа. Логины авторов в данном параметре также можно перечислять через запятую. Например, при использовании {customcomments authorexclude="admin,test"} будут выведены комментарии всех авторов, кроме авторов с логином "admin" и логином "test".

days - указывает временной период, где x это количество дней, за которые выводить комментарии. Например, тег {customcomments days="2" limit="5"} выведет 5 комментариев за 2 последних дня.

template - файл шаблона который будет использоваться при выводе комментариев в данном случае это будет custom.tpl если вы используете на сайте несколько шаблонов, то данный файл должен присутствовать в каждом шаблоне. В данном шаблоне используются теги аналогичные тем, что вы используете в шаблоне вывода комментариев (comments.tpl).

available - указывает раздел сайта, в котором будут выводится запрашиваемые комментарии. Вы можете комбинировать разделы при помощи "|", например, available="userinfo|register|main" будет выводить ваши комментарии на главной, при регистрации и при просмотре профиля пользователя.

from - указывает номер комментария с которой начнется вывод. Нумерация комментариев начинается с нуля. Например, если вы хотите пропустить первый комментарий, который совпадает с вашими условиями, то нужно указывать from="1"

limit - указывает сколько комментариев будет выведено.

order - указывает критерий сортировки комментариев, может принимать следующие значения:

date - сортировка комментариев по дате, например, тег {customcomments order="date" limit="5"} выведет пять последних комментариев.
rating - сортировка комментариев по рейтингу, например, тег {customcomments order="rating" limit="5"} выведет пять самых рейтинговых комментариев.
rand - сортировка комментариев в случайном порядке, например, тег {customcomments order="rand" limit="5"} выведет пять комментариев в случайном порядке.

sort - указывает порядок сортировки комментариев. При использовании значения desc публикации сортируются по убыванию, а при использовании asc по возрастанию.

cache - принимает значения yes или no и указывает кешировать вывод или нет, мы рекомендуем кешировать блоки данного вывода для снижения нагрузки на сервер.


Все параметры данного тега являются необязательными. Достаточно указать одного любого параметра. Вы также можете комбинировать различные параметры данного тега по своему усмотрению.

16. Для шаблонов вывода комментариев (comments.tpl) {comment limit="X"} , который выводит текст комментария без HTML форматирования, при этом сам текст комментария сокращается до указанного "x" количества символов. При этом сокращение текста происходит до последнего логического слова, а не обрывает текст на середине слова. Данный тег будет полезен при использовании пользовательского вывода комментариев, с использованием тега {customcomments ...} , когда нужно вывести не весь комментарий целиком, а только его анонс.

17. Для шаблонов вывода комментариев (comments.tpl) добавлена поддержка нового тега {news-link} , который выводит URL новости, которой принадлежит данный комментарий. Данный тег будет полезен при использовании пользовательского вывода комментариев и при показе последних комментариев.

18. Для шаблонов вывода комментариев (comments.tpl) добавлена поддержка нового тега {news-title} , который выводит HTML безопасный заголовок новости, которой принадлежит данный комментарий. Данный тег будет полезен при использовании пользовательского вывода комментариев и при показе последних комментариев.

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

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

21. Добавлена возможность продвижения пользователей из одной группы в другую, при наборе им определенного количества новостей на сайте. Для этого в настройках групп добавлена соответствующая настройка, где вы можете указать, сколько новостей необходимо иметь и в какую группу переместить пользователя при наборе им данного количества публикаций. Публикации, находящиеся на модерации, при этом не учитываются. Тем самым вы можете предоставлять пользователям, которые заслужили определенное доверие какие-либо дополнительные права и преференции.

22. Добавлена возможность продвижения пользователей из одной группы в другую при наборе им определенного количества комментариев на сайте. Для этого в настройках групп добавлена соответствующая настройка, где вы можете указать, сколько комментариев необходимо иметь и в какую группу переместить пользователя им данного количества комментариев. Комментарии, находящиеся на модерации, при этом не учитываются. Тем самым вы можете предоставлять пользователям, которые заслужили определенное доверие какие-либо дополнительные права и преференции.

23. Добавлена возможность продвижения пользователей из одной группы в другую при наборе им определенного рейтинга их публикаций на сайте. Для этого в настройках групп добавлена соответствующая настройка, где вы можете указать, какой суммарный рейтинг им необходимо набрать, и в какую группу переместить пользователя при получении ими данного рейтинга.

24. Для шаблонов вывода комментариев и персональных сообщений (comments.tpl и pm.tpl) добавлена поддержка форматированного вывода количества комментариев и публикаций пользователя. Например, при выводе количества комментариев 252501 будет выведено 252 501. Что облегчает восприятие больших цифр.

25. Для шаблонов вывода профиля пользователя (userinfo.tpl и profile_popup.tpl) добавлена поддержка форматированного вывода числового рейтинга. Например, при выводе общего рейтинга пользователя +252501, будет выведено +252 501. Что облегчает восприятие больших цифр.

26. Добавлена поддержка нового глобального шаблонного тега: {* Закомментированный код *} . Данный тег предназначен для комментирования кода, все что заключено между "{*" и "*}" будет удалено из шаблона. И будет отсутствовать при выводе на сайте. Данные теги будут полезны разработчикам шаблонов, для отладки той или иной функциональности, когда нужно временно закомментировать ту или иную функциональность. Данный тег является глобальным и может использоваться во всех шаблонах.

27. Добавлен автоматический сброс индекса похожих новостей при изменении количества выводимых похожих новостей в настройках скрипта. Тем самым больше нет необходимости после изменения данной настройки заходить в перестроение публикаций и там делать перестроение кеша похожих новостей.

28. В настройки скрипта добавлена возможность указания нужно ли выводить в профиле пользователя его публикации, ожидающие модерации, или нет. В случае включения данной настройки, то пользователь может увидеть в своем профиле новости, которые ожидают модерации, и отредактировать их. Если данная настройка отключена, то в его профиле данные новости отображатся не будут, и также не будет отображатся сообщение о том, что у него нет публикаций, ожидающих модерации.

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

30. Внесены изменения в работу добавления комментариев на сайте , в случае если комментарий пишет незарегистрированный посетитель сайта. Если введенное им имя совпадает с зарегистрированным логином, то к его имени добавляется префикс "Гость". Например, посетитель написал имя "Татьяна", и на сайте уже есть зарегистрированный логин "Татьяна", то комментарий будет добавлен от имени "Гость Татьяна". Тем самым имеется визуальное отличие, что этот пользователь не является зарегистрированным на сайте, а также посетитель сайта избавляется от неудобной обязанности придумывать себе другое имя. Если же такого нет имени среди зарегистрированных, то префикс добавляться не будет.

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

32. В раздел управления облаком тегов в админпанели добавлена возможность поиска ключевых слов по заданному слову. Что существенно облегчает поиск и редактирование нужного слова, при большом объеме заданных слов.

33. В раздел управления перекрестными ссылками в админпанели добавлена возможность поиска по ключевым словам и ссылкам. Что существенно облегчает поиск и редактирование нужного слова, при большом объеме заданных слов.

34. Для модуля "Перекрестные ссылки" добавлена возможность установки новой опции: "Открывать ссылку в новом окне". Тем самым вы можете устанавливать где вам открывать нужную вам ссылку в этом же окне браузера, или в новом окне браузера.

35. Для массовых действий в модуле "Перекрестные ссылки" также была добавлена возможность назначать ссылкам каким образом открывать данные ссылки, в новом окне браузера или в текущем окне браузера.

36. В админпанели, в разделе управления пользователями , добавлена новая опция "Точное совпадение логина", при поиске пользователей по логину. В случае если данная опция отмечена, то поиск будет проходит по точному совпадению логина с указанным в поиске. Тем самым облегчается поиск нужного пользователя, имеющего короткий логин, в случае если на сайте зарегистрировано большое количество пользователей.

37. Воспроизведение флеш видео файлов в формате.flv приведено к единому плееру. Теперь для воспроизведения данного видео используется тот же плеер что и для воспроизведения HTML5 видео. Тем самым всё видео на сайте, имеет единый визуальный вид.

38. Для более лучшего и качественного продвижения публикаций в поисковых системах , при просмотре полных новостей, добавлено автоматическое использование ключевых слов из облака тегов, в специально сформированном метатеге для поисковых систем. Подробнее о данном метатеге вы можете прочитать на странице https://support.google.com/news/publisher/answer/68297?hl=ru

39. Улучшена обработка текста, опубликованного в тегах code в парсере новостей. Было исключено какое-либо пересечение публикуемого кода с тегами и фильтрами DLE, что позволяет публиковать в нем исходных код, без какого-либо вмешательства в текст со стороны DLE.

40. Добавлена поддержка копирования аватаров при авторизации на сайте с использованием социальной сети "Одноклассники".

41. Обновлен до актуальной версии визуальный редактор TinyMCE. Помимо исправления ранее обнаруженных ошибок, в данном редакторе было добавлено много других изменений. Внешний вид редактора изменен на более классический для вебсайтов (все функции представлены в виде кнопок, без меню), в нем была улучшена вставка ББ тегов для видео и Youtube и других. В редакторе улучшена вставка и обработка примеров исходных кодов (тега ), добавлена подсветка этого кода непосредственно в редакторе, а также добавлено удобное окно для вставки примеров кодов. В редакторе добавлена подсветка синтаксиса HTML кода, при редактировании исходного кода HTML.

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

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

44.Добавлена поддержка кодировки utf8mb4 для MySQL сервера версии 5.7.x

45. Исправлена проблема, при которой некорректно работали теги Текст в случае использования их совместно с числами для которых применен форматированный вывод.

46. Исправлена проблема, при которой некорректно выводились новости с использованием тега {custom ...} c параметрами author и catalog, в случае если использовалось несколько тегов на странице одновременно с этими параметрами, с включенном кешировании при этом.

47. Исправлена проблема с цитированием комментариев , которые содержат в себе HTML теги, при использовании стандартного редактора для комментариев. Теперь при цитировании в поле редактора, также вставляются эти HTML теги, а не их HTML сущности.

48. Исправлена проблема с получением писем в кодировке UTF-8 на некоторые типы почтовых сервисов.

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

50. Исправлена проблема, при которой не очищался кеш новости, если она находилась на модерации и редактировалась автором этой новости на сайте.

51. Исправлены обнаруженные и заявленные ранее небольшие ошибки в скрипте.

Это актуальная на данный момент версия CMS DataLife Engine

Были подготовлены и реализованы следующие изменения:




1. В состав дистрибутива включены три абсолютно новых шаблона. Данные шаблоны созданы с использованием HTML5 стандартов. Являются полностью адаптивными, как под декстопные браузеры, так и под планшеты и смартфоны. Также в верстке шаблонов активно использована векторная графика, что обеспечивает их качественное отображение на HiDPI (Retina) дисплеях.



2. Добавлен новый тип дополнительных полей для публикаций: \»Загружаемое изображение\». При данном типе поля, пользователю предлагается загрузить картинку для данной новости, которая будет выводится потом при показе новостей на сайте. Для данного типа поля вы можете задать такие параметры как ограничения на вес и размер картинки, нужно ли создавать для нее уменьшенную копию, размеры уменьшенной копии, накладывать ли на нее водяной знак. Тем самым с использованием данного типа поля облегчается процесс написания новостей, например, вы можете создать различные типы картинок (постеры, скриншоты и т.д.) и оформить их вывод в шаблоне, а при добавлении новостей останется лишь их только загрузить в один клик.



3. Добавлен новый тип дополнительных полей для публикаций: \»Загружаемый файл\». При данном типе поля, пользователю предлагается загрузить файл для данной новости, который потом будет скачиваться как вложение. В настройках данного поля вы можете задать расширения файлов, которые допустимы для данного поля при загрузке, а также максимальный вес, загружаемого файла. Тем самым с использованием данного типа поля облегчается процесс написания новостей, например, вы можете создать различные типы файлов, в том числе и картинки непосредственно для скачивания (обои в разных разрешениях) и оформить их вывод в шаблоне, а при добавлении новостей останется лишь их только загрузить в один клик.

4. Добавлен новый тип дополнительных полей для публикаций: \»Переключатель \’Да\’ или \’Нет\’\». При написании новостей данный тип поля выводится в виде переключателя \’Да\’ или \’Нет\’ (Включено или Выключено). В качестве значения данное поле выводит \’Да\’ или \’Нет\’ в зависимости от того что было установлено при написании новости. Однако основное назначение данного поля - это управление тегами текст и текст . В случае если переключатель был включен, то теги текст выведут соответствующих текст, а теги текст уберут его, и наоборот. Тем самым при помощи данных дополнительных полей вы можете легко управлять выводимой информацией на сайте в шаблонах, применительно к каждой конкретной новости. Например, включать или отключать вывод каких-либо вкладок с описанием на странице, либо организовать вывод галерей со скриншотами или постерами и т.д.

5. Для дополнительных полей новостей, имеющих тип поля \»Список\», добавлена возможность создавать отдельные значения, которые отображаются в списке при добавлении публикации, и те, которые отображаются на сайте после выбора пользователем в качестве значений. Для этого при добавлении поля, нужно использовать разделитель \’|\’ в списке значений, например: Yes|Да. При написании новости, пользователю для выбора будет указан пункт Да, а на сайте будет выведено значение поля как Yes.

6. Для дополнительных полей профиля пользователей, имеющих тип поля \»Список\», также добавлена возможность создавать отдельные значения, которые отображаются в списке при редактировании профиля, и те которые отображаются на сайте после выбора пользователем в качестве значений. Для этого при добавлении поля, нужно также использовать разделитель \’|\’ в списке значений, например Yes|Да. При редактировании профиля, пользователю для выбора будет указан пункт Да, а на сайте будет выведено значение поля как Yes.

7. Существенно переработан и улучшен режим работы \»Использовать как перекрестные гиперссылки\» для дополнительных полей новости. В случае если поле имеет данную опцию, то поиск новостей по значению поля производится на основе полного совпадения данного значения у других новостей, а также совпадения именно данного конкретного поля. Например, если раньше вы создавали поле \»Год выпуска\», и задавали значение 2015, и при этом у вас было другое поле, в котором была, например, загружена картинка, в пути которой также было 2015, то старая система выводила обе новости, т.к. поиск осуществлялся исключительно по вхождению искомого слова. Что приводило к тому что показывались не совсем ожидаемые новости. Теперь же будут показаны только те новости, у которых именно поле \»Год выпуска\» будет иметь значение 2015. Никакие другие поля и их значения учитываться больше не будут, что позволяет более расширенно использовать дополнительные поля, для организации перекрестного связывания между собой. Например, по году выпуска, актерам, режиссерам и т.д. Новый тип поиска автоматически применяется только для новых добавляемых новостей. Если вы хотите, чтобы и старые существующие новости участвовали в данном поиске, то вам нужно будет в админпанели, в разделе \»Перестроение публикаций\», запустить перестроение новостей, и тем самым будет создан индекс значений полей и для старых существующих новостей.

8. Для основного шаблона (main.tpl) добавлена возможность вывода в нем дополнительных полей новостей при просмотре полной новости на сайте. Для этого в данном шаблоне вы можете использовать те же теги, что и для вывода дополнительных полей в шаблонах краткой и полной новости. Это теги: текст , текст и

9. Для шаблонов, поддерживающих вывод дополнительных полей новостей, добавлена поддержка новых тегов Текст , которые выводят текст заключенный в них, если значение дополнительного поля совпадает с указанным. А также добавлена возможность использования тегов Текст , которые выведут текст, если значение поля не совпадает с указанным. Где tagname это имя дополнительного поля, а tagvalue это его значение. Например, Мужской пол , данный тег выведет текст \»Мужской пол\», если значению поля test будет установлено \»m\» при написании публикации. Это открывает большие возможности по созданию различных оформлений шаблонов в зависимости от значений полей, установленных при написании этих публикаций. Например, создав поле с типом \»список\», можно в зависимости от выбранного пункта, применить различное оформление.

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

11. При использовании авторизации на сайте с помощью социальных сетей, добавлена возможность для пользователей задать свой персональный логин для сайта, который будет в дальнейшем использоваться. Запрос логина осуществляется только в момент первой авторизации на сайте при помощи социальной сети и будет использоваться в дальнейшем автоматически. Данное нововведение будет полезно для посетителей вашего сайта, которые не хотят использовать данные, полученные автоматически из социальной сети, например, когда в качестве логина используется имя и фамилия пользователя.

12. Добавлена поддержка смайлов для HiDPI (Retina) мониторов. Для этого используется две копии смайлов, в обычном разрешении, и в высококачественном. В случае если монитор имеет обычную пиксельную плотность, то на нем выводится обычный смайлик, если монитор имеет HiDPI (Retina) плотность, то выводится его высококачественная копия. Определение и использование смайлов происходит в автоматическом режиме. Для этого вам нужно разместить в папке со смайлами две копии смайлика, например, с именем smile.gif для обычного смайла и [email protected] для HiDPI (Retina) смайла. В случае если копия смайла в высоком разрешении отсутствует, то будет использоваться во всех случаях вывод обычного смайла.

13. В состав дистрибутива включено 60 новых смайлов. Все они имеет поддержку HiDPI (Retina) дисплеев.

14. Добавлена автоматическая поддержка смайлов в формате.png. Поддержка осуществляется также в автоматическом режиме. Для этого нужно просто скопировать файлы в папку со смайлами с расширением.png и указать имя смайлика в настройках скрипта.

15. Добавлен новый глобальный тег:

{customcomments id=\»1,2,5-8\» category=\»2,3,5-8\» author=\»x\» days=\»x\» template=\»custom\» available=\»global\» from=\»0\» limit=\»10\» order=\»date\» sort=\»desc\» cache=\»yes\»}

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

Данный тег может принимать следующие параметры:

id — список ID комментариев, которые вы хотите вывести, разделяются запятой без пробелов. Также вы можете указывать диапазон ID комментариев при помощи тире. Например, 1,4-8,11 выведет комментарии c ID 1, комментарии имеющие id c 4 по 8, а также с ID 11.

category — список ID категорий новостей, из которых производить выборку комментариев, разделяются запятой без пробелов. Также вы можете указывать диапазон категорий при помощи тире. Например 1,4-8,11 выведет комментарии из категории 1, категорий имеющих id c 4 по 8, а также из категории 11.

categoryexclude — полностью противоположен параметру category=\»список категорий\» и позволяет вывести комментарии, новости которых не принадлежат указанным в параметре категориям. Например, {customcomments categoryexclude=\»2,7\»} выведет все комментарии у новостей, которые не принадлежат категориям и id 2 и 7.

author — указывает логин автора комментария, при указании данного параметра будут выводится только комментарии указанного автора. Допускается перечисление через запятую нескольких авторов. Например, тег {customcomments author=\»admin\» limit=\»5\»} выведет 5 комментариев автора с логином \»admin\».

authorexclude — указывает логины авторов, которые необходимо исключить из показа. Логины авторов в данном параметре также можно перечислять через запятую. Например, при использовании {customcomments authorexclude=\»admin,test\»} будут выведены комментарии всех авторов, кроме авторов с логином \»admin\» и логином \»test\».

days — указывает временной период, где x это количество дней, за которые выводить комментарии. Например, тег {customcomments days=\»2\» limit=\»5\»} выведет 5 комментариев за 2 последних дня.

template — файл шаблона который будет использоваться при выводе комментариев в данном случае это будет custom.tpl если вы используете на сайте несколько шаблонов, то данный файл должен присутствовать в каждом шаблоне. В данном шаблоне используются теги аналогичные тем, что вы используете в шаблоне вывода комментариев (comments.tpl).

available — указывает раздел сайта, в котором будут выводится запрашиваемые комментарии. Вы можете комбинировать разделы при помощи \»|\», например, available=\»userinfo|register|main\» будет выводить ваши комментарии на главной, при регистрации и при просмотре профиля пользователя.

from — указывает номер комментария с которой начнется вывод. Нумерация комментариев начинается с нуля. Например, если вы хотите пропустить первый комментарий, который совпадает с вашими условиями, то нужно указывать from=\»1\»

limit — указывает сколько комментариев будет выведено.

order — указывает критерий сортировки комментариев, может принимать следующие значения:

date — сортировка комментариев по дате, например, тег {customcomments order=\»date\» limit=\»5\»} выведет пять последних комментариев.
rating — сортировка комментариев по рейтингу, например, тег {customcomments order=\»rating\» limit=\»5\»} выведет пять самых рейтинговых комментариев.
rand — сортировка комментариев в случайном порядке, например, тег {customcomments order=\»rand\» limit=\»5\»} выведет пять комментариев в случайном порядке.

sort — указывает порядок сортировки комментариев. При использовании значения desc публикации сортируются по убыванию, а при использовании asc по возрастанию.

cache — принимает значения yes или no и указывает кешировать вывод или нет, мы рекомендуем кешировать блоки данного вывода для снижения нагрузки на сервер.

Все параметры данного тега являются необязательными. Достаточно указать одного любого параметра. Вы также можете комбинировать различные параметры данного тега по своему усмотрению.

16. Для шаблонов вывода комментариев (comments.tpl) добавлена поддержка нового тега {comment limit=\»X\»}, который выводит текст комментария без HTML форматирования, при этом сам текст комментария сокращается до указанного \»x\» количества символов. При этом сокращение текста происходит до последнего логического слова, а не обрывает текст на середине слова. Данный тег будет полезен при использовании пользовательского вывода комментариев, с использованием тега {customcomments …}, когда нужно вывести не весь комментарий целиком, а только его анонс.

17. Для шаблонов вывода комментариев (comments.tpl) добавлена поддержка нового тега {news-link}, который выводит URL новости, которой принадлежит данный комментарий. Данный тег будет полезен при использовании пользовательского вывода комментариев и при показе последних комментариев.

18. Для шаблонов вывода комментариев (comments.tpl) добавлена поддержка нового тега {news-title}, который выводит HTML безопасный заголовок новости, которой принадлежит данный комментарий. Данный тег будет полезен при использовании пользовательского вывода комментариев и при показе последних комментариев.

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

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

21. Добавлена возможность продвижения пользователей из одной группы в другую, при наборе им определенного количества новостей на сайте. Для этого в настройках групп добавлена соответствующая настройка, где вы можете указать, сколько новостей необходимо иметь и в какую группу переместить пользователя при наборе им данного количества публикаций. Публикации, находящиеся на модерации, при этом не учитываются. Тем самым вы можете предоставлять пользователям, которые заслужили определенное доверие какие-либо дополнительные права и преференции.

22. Добавлена возможность продвижения пользователей из одной группы в другую при наборе им определенного количества комментариев на сайте. Для этого в настройках групп добавлена соответствующая настройка, где вы можете указать, сколько комментариев необходимо иметь и в какую группу переместить пользователя им данного количества комментариев. Комментарии, находящиеся на модерации, при этом не учитываются. Тем самым вы можете предоставлять пользователям, которые заслужили определенное доверие какие-либо дополнительные права и преференции.

23. Добавлена возможность продвижения пользователей из одной группы в другую при наборе им определенного рейтинга их публикаций на сайте. Для этого в настройках групп добавлена соответствующая настройка, где вы можете указать, какой суммарный рейтинг им необходимо набрать, и в какую группу переместить пользователя при получении ими данного рейтинга.

24. Для шаблонов вывода комментариев и персональных сообщений (comments.tpl и pm.tpl) добавлена поддержка форматированного вывода количества комментариев и публикаций пользователя. Например, при выводе количества комментариев 252501 будет выведено 252 501. Что облегчает восприятие больших цифр.

25. Для шаблонов вывода профиля пользователя (userinfo.tpl и profile_popup.tpl) добавлена поддержка форматированного вывода числового рейтинга. Например, при выводе общего рейтинга пользователя +252501, будет выведено +252 501. Что облегчает восприятие больших цифр.

26. Добавлена поддержка нового глобального шаблонного тега: {* Закомментированный код *}. Данный тег предназначен для комментирования кода, все что заключено между \»{*\» и \»*}\» будет удалено из шаблона. И будет отсутствовать при выводе на сайте. Данные теги будут полезны разработчикам шаблонов, для отладки той или иной функциональности, когда нужно временно закомментировать ту или иную функциональность. Данный тег является глобальным и может использоваться во всех шаблонах.

27. Добавлен автоматический сброс индекса похожих новостей при изменении количества выводимых похожих новостей в настройках скрипта. Тем самым больше нет необходимости после изменения данной настройки заходить в перестроение публикаций и там делать перестроение кеша похожих новостей.

28. В настройки скрипта добавлена возможность указания нужно ли выводить в профиле пользователя его публикации, ожидающие модерации, или нет. В случае включения данной настройки, то пользователь может увидеть в своем профиле новости, которые ожидают модерации, и отредактировать их. Если данная настройка отключена, то в его профиле данные новости отображатся не будут, и также не будет отображатся сообщение о том, что у него нет публикаций, ожидающих модерации.

29. Внесены изменения в работу обратной связи на сайте, в случае если пишет незарегистрированный пользователь на сайте. В случае если пользователь не зарегистрирован, то не проводится проверка совпадения введенного им логина с теми, что уже зарегистрированы на сайте. Вместо этого к его введенному имени добавляется префикс \»Незарегистрированный пользователь\». Тем самым администрация или получатель письма с сайта будет легко видеть, что письмо ему отправил именно незарегистрированный посетитель сайта. А для самого посетителя сайта не будет неудобной обязанности придумывать другое имя, если то имя что он написал, занято зарегистрированным пользователем.

30. Внесены изменения в работу добавления комментариев на сайте, в случае если комментарий пишет незарегистрированный посетитель сайта. Если введенное им имя совпадает с зарегистрированным логином, то к его имени добавляется префикс \»Гость\». Например, посетитель написал имя \»Татьяна\», и на сайте уже есть зарегистрированный логин \»Татьяна\», то комментарий будет добавлен от имени \»Гость Татьяна\». Тем самым имеется визуальное отличие, что этот пользователь не является зарегистрированным на сайте, а также посетитель сайта избавляется от неудобной обязанности придумывать себе другое имя. Если же такого нет имени среди зарегистрированных, то префикс добавляться не будет.

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

32. В раздел управления облаком тегов в админпанели добавлена возможность поиска ключевых слов по заданному слову. Что существенно облегчает поиск и редактирование нужного слова, при большом объеме заданных слов.

34. Для модуля \»Перекрестные ссылки\» добавлена возможность установки новой опции: \»Открывать ссылку в новом окне\». Тем самым вы можете устанавливать где вам открывать нужную вам ссылку в этом же окне браузера, или в новом окне браузера.

35. Для массовых действий в модуле \»Перекрестные ссылки\» также была добавлена возможность назначать ссылкам каким образом открывать данные ссылки, в новом окне браузера или в текущем окне браузера.

36. В админпанели, в разделе управления пользователями, добавлена новая опция \»Точное совпадение логина\», при поиске пользователей по логину. В случае если данная опция отмечена, то поиск будет проходит по точному совпадению логина с указанным в поиске. Тем самым облегчается поиск нужного пользователя, имеющего короткий логин, в случае если на сайте зарегистрировано большое количество пользователей.

37. Воспроизведение флеш видео файлов в формате.flv приведено к единому плееру. Теперь для воспроизведения данного видео используется тот же плеер что и для воспроизведения HTML5 видео. Тем самым всё видео на сайте, имеет единый визуальный вид.

38. Для более лучшего и качественного продвижения публикаций в поисковых системах, при просмотре полных новостей, добавлено автоматическое использование ключевых слов из облака тегов, в специально сформированном метатеге для поисковых систем. Подробнее о данном метатеге вы можете прочитать на странице https://support.google.com/news/publisher/answer/68297?hl=ru

39. Улучшена обработка текста, опубликованного в тегах code в парсере новостей. Было исключено какое-либо пересечение публикуемого кода с тегами и фильтрами DLE, что позволяет публиковать в нем исходных код, без какого-либо вмешательства в текст со стороны DLE.

40. Добавлена поддержка копирования аватаров при авторизации на сайте с использованием социальной сети \»Одноклассники\».

41. Обновлен до актуальной версии визуальный редактор TinyMCE. Помимо исправления ранее обнаруженных ошибок, в данном редакторе было добавлено много других изменений. Внешний вид редактора изменен на более классический для вебсайтов (все функции представлены в виде кнопок, без меню), в нем была улучшена вставка ББ тегов для видео и Youtube и других. В редакторе улучшена вставка и обработка примеров исходных кодов (тега ), добавлена подсветка этого кода непосредственно в редакторе, а также добавлено удобное окно для вставки примеров кодов. В редакторе добавлена подсветка синтаксиса HTML кода, при редактировании исходного кода HTML.

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

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

44.Добавлена поддержка кодировки utf8mb4 для MySQL сервера версии 5.7.x

45. Исправлена проблема, при которой некорректно работали теги Текст в случае использования их совместно с числами для которых применен форматированный вывод.

46. Исправлена проблема, при которой некорректно выводились новости с использованием тега {custom …} c параметрами author и catalog, в случае если использовалось несколько тегов на странице одновременно с этими параметрами, с включенном кешировании при этом.

47. Исправлена проблема с цитированием комментариев, которые содержат в себе HTML теги, при использовании стандартного редактора для комментариев. Теперь при цитировании в поле редактора, также вставляются эти HTML теги, а не их HTML сущности.

48. Исправлена проблема с получением писем в кодировке UTF-8 на некоторые типы почтовых сервисов.

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

50. Исправлена проблема, при которой не очищался кеш новости, если она находилась на модерации и редактировалась автором этой новости на сайте.

51. Исправлены обнаруженные и заявленные ранее небольшие ошибки в скрипте.

Данная система плагинов позволяет модифицировать любую функциональность скрипта по своему усмотрению. Установка плагинов на сайт, обновление плагинов, осуществляется в один клик, непосредственно в панели управления DataLife Engine. Если плагин разработан под новую систему, то пользователям больше не придется читать инструкции по установке, что-то править непосредственно в файлах скрипта, и т.д. Им достаточно будет просто закачать плагин в админпанели и все.

Cистема плагинов построена по технологии виртуальной файловой системы. Вы описываете в плагине, в каком файле и какие действия нужно произвести, на основе этой информации DataLife Engine создаст виртуальные копии этих файлов, со всеми нужными изменениями и модификациями, и будет работать с созданными виртуальными копиями, не затрагивая при этом оригинальных файлов. При этом вы можете описать изменения практически во всех файлах, за исключением ряда базовых, например корневых файлов, но они не несут какого либо функционала, кроме как подключение других файлов. Также может быть изменена функциональность файлов, отвечающих за AJAX функции, для этого они были полностью переписаны для работы через контроллер. Какие это преимущества дает? Во-первых, оригинальные файлы всегда остаются неизменными, поэтому плагины могут быть легко изменены, удалены, обновлены и т.д. Во вторых эта система использует минимально возможную нагрузку на сайты в целом, т.к. виртуальные копии файлов создаются всего один раз, в момент установки или обновления плагинов, после чего DataLife Engine работает с этими измененными файлами как с обычными нативными файлами и нет никаких расходов памяти на точки вызова, хранение и контроль информации о том где и какую функциональность нужно менять и т.д. Нагрузка на сервер увеличится только на ту нагрузку, которую принесет с собой сам плагин, а система управления плагинами не будет вызывать какой либо дополнительной нагрузки. В-третьих, нет никаких проблем непосредственно с обновлением скрипта, скрипт может обновляться, на новые версии, а ваши плагины автоматически применяться к новым версиям. При этом различные плагины могут модифицировать один и тот же файл не вызывая конфликтов, при условии конечно если разные плагины не производят прямо противоположных друг другу действий.

Итак в самом модуле управления плагинами, вы можете либо создать плагин непосредственно в панели управления, либо загрузить готовый плагин. Рассмотрим добавление нового плагина в непосредственно в панели управления:

На первой вкладке вы задаете общие данные о плагине. Его название, его краткое описание. Для удобства различения с другими плагинами, вы можете указать ему иконку, которую он будет использовать в списке плагинов. Также вы задаете версию непосредственно самого плагина, и версию DataLife Engine c которой он совместим.

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

1. Найти и заменить какой либо код.

2. Найти и добавить выше нужный код.

3. Найти и добавить ниже какой либо код.

4. Полностью заменить содержимое файла на свое.

5. Создать новый виртуальный файл, который не существует в оригинальном DLE.

Вы можете в любое время также добавлять или удалять файлы, менять или удалять действия над файлами. Для удобства восприятия и редактирования, весь код при этом подсвечивается, а поля могут динамически растягиваться.

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

На следующей вкладке вы можете добавить необходимые действия в базе данных MySQL, которые должен производить плагин в тех или иных ситуациях. Вы можете задать список MySQL запросов которые необходимо выполнить при установке плагина, при его обновлении, при его отключении, при его включении, при его удалении. При этом на каждое действие вы можете задать как один, так и список из нескольких запросов к базе данных.

Для существующего плагина, вы можете выполнить следующие действия: Вы можете его отключить, при этом он остается на сайте, но полностью игнорируется скриптом, и все его действия над файлами приостанавливаются. Вы можете его обновить до более новой версии, если таковая есть. Скачать плагин на компьютер для установки его на другой сайт. При этом сам файл скачивается в XML формате, и в данном XML содержится описание всех действий. По сути плагин представляет собой XML файл, который может быть установлен на сайт в админпанели.

Рассмотрим загрузку уже готового плагина на сайт. Вы можете загрузить и установить на свой сайт уже готовый плагин. При нажатии соответствующей кнопки вы можете загрузить либо XML файл с плагином. Либо ZIP архив с плагином. Это позволяет создавать очень сложные плагины, содержащие в себе большое количество других дополнительных файлов, как графических, так и PHP файлов. Чтобы например не описывать все действия непосредственно в самом плагине, можно создать дополнительные файлы и упаковать их в архив, разложив по новым местам. При этом важно знать, что в архиве могут быть только те PHP файлы, которые не входят в состав дистрибутива, а только ваши дополнительные файлы, в случае если будут файлы входящие в дистрибутив, такая загрузка будет заблокирована. Модификацию стандартных файлов, нужно описывать уже в самом плагине. Сам файл с XML плагином должен находится в корне вашего архива.

В случае если вы загружаете архив с плагином, и у DataLife Engine не будет прав на запись находящихся в вашем архиве файлов. Он автоматически запросит FTP доступ для того чтобы загрузить ваш архив. Если доступов не требуется, то все будет скопировано автоматически без них. При этом эти доступы не будут нигде храниться, а будут автоматически удалены после того как будут не нужны.

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