Список изменений

<< Click to Display Table of Contents >>

Навигация:  Общая информация >

Список изменений

Список изменений в версии 17.3:

 

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

Добавлена возможность указать в настройках скрипта список стран, для которых разрешена авторизация в панели управления DataLife Engine. А также для удобства вместо разрешённых стран, вы можете указать список запрещённых стран. В случае если пользователь находится в запрещённой стране, то все попытки авторизации в панели управления будут автоматически заблокированы не допуская даже попытки авторизации.

Добавлена возможность выводить тот или иной контент в шаблонах на основе того, в какой стране находится посетитель сайта. Для этого в шаблоны добавлен новый глобальный тег: {country} который выведет ISO код страны, в которой находится посетитель сайта, например, выведет RU если посетитель находится в России, или US если посетитель находится в США. Данный тег, полезен, когда нужно добавить к ссылке какой-либо префикс на основе страны, например вывести флаг посетителя на сайте. Добавлены новые теги [country=X] текст [/country] которые выведут текст, указанный в них, если посетитель находится в указанных X странах, где X это список ISO кодов стран. Страны можно перечислять через запятую. Например, теги [country=RU, BY, KZ] текст [/country] выведут текст если посетитель из России, Беларуси или Казахстана. Также добавлены противоположные теги [not-country=X] текст [/not-country] которые выведут текст, указанный в них, если посетитель находится не в указанных X странах, где X это список ISO кодов стран. Например, [not-country=RU, BY, KZ] текст [/not-country] выведут текст если посетитель не из России, Беларуси или Казахстана, а из любых других стран.

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

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

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

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

Добавлено автоматическое формирование содержимого метатегов “keywords” при показе кратких новостей на основе содержимого страницы, в случае если для данной страницы не было задано специальное значение в панели управления. В случае если для раздела имеется несколько страниц, то ключевые слова, которые были заданы в админпанели, будут использоваться только для первой стартовой страницы, а для последующих страниц данный метатег будет формироваться на основе контента именно данной страницы. Тем самым данный метатег на разных страницах не будет дублироваться, что положительно влияет на общее SEO вашего сайта. Автоматическое формирование будет производится точно также как и ранее для метатега “description”.

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

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

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

Добавлена возможность назначать дату автоматического закрытия опросов к публикациям при их добавлении или редактировании в панели управления. Для этого вы можете у публикации во вкладке “Дополнительно” выбрать срок действия и в качестве действия выбрать “Закрытие опроса для голосований”. При наступлении указанной даты опрос будет автоматически закрыт и станет доступным только для просмотра результатов.

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

В настройки скрипта добавлена возможность указать количество персональных сообщений, выводимых на страницу. Ранее данное значение было фиксированным в 20 сообщений. Теперь вы можете указывать своё собственное значение в настройках.

Для тега пользовательского вывода публикаций {custom …} добавлена возможность использовать новый параметр name="X", в котором для блока вы можете назначить имя, и в дальнейшем использовать данное имя для отображения или скрытия другого оформления в шаблоне в случае, если в данном блоке есть контент или он отсутствует. Например, написание {custom name="block1" category="6"} покажет публикации из категории ID 6, а сам блок получить имя “block1”. Для оперирования с данным именем добавлены новые глобальные теги: [custom=X] Текст [/custom] где X это имя блока, которые выводят текст заключённый в них в случае, если блок с данным именем содержит информацию. А также добавлены противоположные теги [not-custom=X] Текст [/not-custom] которые выводят текст заключённый в них в случае, если блок с данным именем не содержит никакой информации и публикаций нет. Таким образом вы можете делать дополнительное внешнее оформление блоков или наоборот скрывать его в зависимости от того есть публикации в блоке или нет. Например, [custom=block1] Заголовок {custom name="block1" category="6"} [/custom]. При этом сам блок, может быть, в любом месте на странице и не обязательно внутри данных тегов. Тем самым вы можете адаптировать и менять другое оформление в шаблоне на основе данных тегов.

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

Добавлено автоматическое заполнение полей имени и E-Mail при ответе на комментарии для незарегистрированных пользователей, в случае если они ранее уже писали комментарии и вводили на сайте своё имя и почту.

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

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

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

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

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

Добавлено автоматическое срабатывание сохранения информации в базе данных, при нажатии на Enter при добавлении или редактировании публикаций в админпанели, в случае если курсор находится на каком-либо поле содержащим одну строку. Ранее при нажатии на Enter происходил либо поиск похожих новостей, либо заполнение мета описания, в зависимости от версии DLE.

Добавлено кеширование для блоков пользовательского вывода публикаций с использованием блока {custom …} даже в случае, если блок не содержит публикаций для вывода. В данном случае экономится часть ресурсов сервера в случае, если по каким-то причинам отсутствует контент по указанным параметрам.

Для шаблонов вывода профиля пользователя (userinfo.tpl и profile_popup.tpl) добавлена поддержка нового тега {user-id} который выводи ID пользователя. Данный тег может использоваться в ряде случаев при оформлении шаблона, а также, например для формирования пользовательских ссылок, например ссылок на последние комментарии пользователя и т.д.

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

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

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

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

Добавлено использование HTTP заголовка с кодом 301 для ссылок которые опубликованы с использованием тегов защищённых ссылок [leech=….] в публикациях и комментариях.

Для шаблона вывода всплывающей карточки профиля пользователя (profile_popup.tpl) добавлена поддержка новых тегов условий сравнения значений. Например, тег [if field = "значение"] текст [/if] выведет текст заключённых в них если значения поля равно указанному значению.

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

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

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

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

Вывод информации о том, что публикация была обновлена при помощи тегов [updated] …. [/updated] в течении времени указанного в настройках скрипта, осуществляется только если была отмечена галочка “Выводить информацию о том, что публикация обновлена”. В случае если она не отмечена, то плашка об обновлении не появляется. Ранее она появлялась при любом редактировании публикации. Тем самым вы можете выводить эту информацию не при любом редактировании, а только тогда когда это необходимо.

Добавлен контроль забаненных IP и пользователей на все AJAX действия на сайте. Например, если IP адрес был внесён в черный список в разделе “Фильтр по: IP, Логину или E-Mail” в панели управления, то данный IP будет блокироваться в том числе не только на просмотр сайта, но и при имитации AJAX действий. Тем самым в панели управления можно блокировать IP ботов и их подсети, которые накручивают рейтинги, просмотры и т.д.

При выполнении обновления скрипта до новых версий добавлено автоматическое включение вывода ошибок PHP в случае их возникновения, независимо от того выключены они или нет в настройках скрипта в админпанели. Это позволит администраторам сайта при выполнении обновления визуально увидеть какие именно ошибки возникли при обновлении. Это полезно если, например серверное ПО не отвечает минимальным требованиям, или отсутствуют какие-либо необходимые библиотеки PHP интерпретатора. Вывод ошибок включается только на процесс обновления, для всего остального действуют настройки, установленные в настройках скрипта.

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

Снижена нагрузка на сервер, при просмотре всплывающих карточек пользователя в ряде случаев.

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

Проведено множество оптимизаций и улучшений в пользовательском интерфейсе панели управления DataLife Engine. Все устаревшие уведомления в всплывающем окне DLEAlert заменены на уведомления в формате пуш уведомлений DLEPush, которые закрываются автоматически.

Переработан контроль соответствия серверного ПО минимально необходимым требованиям. В случае если на сервере установлена версия PHP ниже минимально необходимой DLE больше не будет выводить “непонятных” PHP ошибок и аварийно завершать работу. Функции, которые не смогут работать, будут автоматически приостановлены, а для администратора будет выведено понятное сообщение о необходимости обновления версии PHP.

Все HTML элементы с типом ‘checkbox’ и ‘radio’ для различных форм, которые генерирует DataLife Engine для вывода на сайте в своём коде, были приведены к единому общему стандарту вывода. Тем самым появилась возможность удобно их кастомизировать с использованием CSS шаблона по своему усмотрению.

Для шаблонных тегов {image-X} предназначенных для вывода URL изображений, а также для метатегов meta property="og:image” добавлена поддержка svg расширений для вставленных в публикацию изображений.

Добавлена принудительная очистка и обнуление полей содержащих только значение '<p><br></p>' до пустого значения. Данное нововведение полезно в случае использования на сайте и в панели управления визуального редактора Floara в котором все пустые поля содержат это значение по умолчанию, даже если ничего не писать в редакторе. Тем самым не будет лишнего кода в полях если в них ничего не писалось в данном редакторе.

Добавлена поддержка сервиса Rutube для вставки видео с использованием тега [media=…] в связи с добавлением сервисом поддержки протокола обмена данными oEmbed.

Визуальный редактор TinyMCE обновлен до актуальной линейки. Была оптимизирована его работа и исправлен ряд ошибок.

Весь код DataLife Engine был переписан без использования настройки $config[’charset’]. Уже очень давно DLE работает только на одной общей кодировке UTF-8, поэтому данная настройка была бессмысленна, и ее нельзя было изменить в настройках DLE в панели управления, при этом весь код DLE ее использовал. В новой версии код DLE ее больше не использует. Ее использование осталось только в местах необходимых для обновления с очень старых версий DLE. Также функции DLE, использующие в качестве параметра данную настройку, сохранили ее в целях совместимости работы со старыми сторонними модулями, но передача данных параметров больше не имеет никакого смысла, поэтому рекомендуется будет адаптировать свои старые модули и плагины, если они используют эти функции DLE.

Исправлена проблема, при которой теги теги [image-x] текст [/image-x] не работали если не использовался в шаблоне тег {image-x} совместно с ними при просмотре полных новостей и при выводе новостей с использованием пользовательского вывода {custom ….}

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

Исправлена проблема, при которой отключённый сайт транслировал RSS поток для турбо страниц с ошибкой.

Исправлена проблема, при которой некорректно отображалось имя плагина, если в нем возникали ошибки, в разделе показа ошибок, если имя плагина содержало теги [lang=x] … [/lang]

Исправлена проблема, при которой нельзя было использовать теги {custom …} в шаблоне attachment.tpl

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

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

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

Исправлена проблема, при которой не работал выбор опции фиксации публикации при добавлении публикации с сайта.

 

Список изменений в версии 17.2:

 

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

Добавлена возможность маркировать новые публикации. Для этого в настройки скрипта в админпанели добавлена возможность указать, сколько времени необходимо считать добавленную публикацию на сайт новой. После этого в шаблонах вывода кратких и полных новостей (shortstory.tpl и fullstory.tpl) вы можете использовать теги [new] текст [/new] которые выводят текст заключённый в них если публикация считается новой, а также вы можете использовать теги [not-new] Текст [/not-new] которые выводят текст, заключённый в них, если с момента публикации прошло больше указанного в настройках времени. Время в настройках задаётся в часах. Тем самым вы можете маркировать публикации в шаблонах какими-либо плашками о том, что это новая публикация.

Добавлена возможность маркировать обновлённые публикации. Для этого в настройки скрипта в админпанели добавлена возможность указать, сколько времени необходимо считать после редактирования публикации обновлённой. После этого в шаблонах вывода кратких и полных новостей (shortstory.tpl и fullstory.tpl) вы можете использовать теги [updated] текст [/updated] которые выводят текст заключённый в них если публикация считается обновлённой, и также вы можете использовать теги [not-updated] Текст [/not-updated] которые выводят текст, заключённый в них, если с момента редактирования прошло больше указанного в настройках времени. Время в настройках задаётся в часах. Тем самым вы можете маркировать публикации в шаблонах какими-либо плашками о том, что это обновлённая публикация.

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

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

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

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

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

Для шаблонов вывода опросов в публикациях (poll.tpl) добавлена поддержка новых тегов [closed] текст [/closed] которые выводят текст заключённый в них, если опрос был закрыт для голосования, а также добавлены обратные теги [not-closed] текст [/not-closed] которые выводят текст заключённый в них, если опрос открыт для голосования посетителям сайта.

Для шаблонов вывода опросов в публикациях (poll.tpl) добавлена поддержка нового тега {close-date} который выводит дату закрытия опроса от голосований, если он был закрыт.

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

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

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

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

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

Для системы плагинов добавлена возможность использовать в имени плагина, описании плагина, и заметок для плагина теги [lang=X] Текст [/lang] в их тексте. Которые выводят текст в зависимости от того языка, который использует пользователь в админпанели. Где X это ISO код языка из языкового пакета. Тем самым вы можете выводить название, и заметки на разных языках. Например тег [lang=ru]Текст на русском[/lang] выведет данный текст если пользователь использует русский язык, а тег [lang=en] English Text [/lang] если пользователь использует английский язык.

Добавлена поддержка нового глобального шаблонного тега: [active-plugins=X] Текст [/active-plugins] который выводит текст заключённый в него если указанный плагин включён и используется на сайте. Где X это ID плагина или его имя. Например, вы можете указать [active-plugins=1] Текст [/active-plugins] либо [active-plugins=Мой плагин] Текст [/active-plugins], и если плагин с ID 1 или с именем “Мой плагин” включен в системе, то текст указанный в теге будет выведен. Также вы можете перечислять несколько параметров в теге через запятую, например, [active-plugins=1,2,5] Текст [/active-plugins].

Добавлена поддержка нового глобального шаблонного тега: [not-active-plugins=X] Текст [/not-active-plugins] который выводит текст заключённый в него если указанный плагин выключен и не используется на сайте. Где X это ID плагина или его имя. Например, вы можете указать [not-active-plugins=1] Текст [/not-active-plugins] либо [not-active-plugins=Мой плагин] Текст [/not-active-plugins], и если плагин с ID 1 или с именем “Мой плагин” выключен в системе и не используется, то текст, указанный в теге будет выведен. Также вы можете перечислять несколько параметров в теге через запятую, например, [not-active-plugins=1,2,5] Текст [/not-active-plugins].

Для пользовательского вывода публикаций с использованием тега {custom ….} добавлена возможность использование нового параметра favorites="yes", который выведет публикации которые находятся у посетителя в закладках. Например, тег {custom favorites="yes" order="id_as_list”} выведет публикации из закладок пользователя в том порядке сортировки, в котором он их вносил в закладки.

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

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

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

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

Для дополнительных полей с типом “Список” добавлена возможность использовать символы запятых в значениях списка. Ранее данный символ был зарезервирован под системные нужды в данном типе дополнительных полей.

Для шаблонов вывода кратких и полных новостей добавлена поддержка новых тегов: [ifxfset fields="X"] текст [/ifxfset] которые выводят текст заключённый в них если поле с именем X было задано и заполнено для новости. При этом вы можете перечислить несколько имён полей через запятую. Например [ifxfset fields="test1,test2"]оба поля с именем test1 и test2 заполнены[/ifxfset] выведет текст если оба поля были заполнены в новости. А также добавлены теги [ifxfnotset fields="X"] текст [/ifxfnotset] которые выводят текст заключённый в них если поле с именем X не было задано и заполнено для новости. При этом вы также можете перечислить несколько имён полей через запятую. Например [ifxfnotset fields="test1,test2"]оба поля с именем test1 и test2 не были заполнены[/ifxfnotset] выведет текст если оба поля не были заполнены в новости. Основное отличие от существующих тегов [xfgiven_x] и [xfnotgiven_x] заключается в том, что вы одновременно можете перечислить несколько полей и проверяется заполненность всех перечисленных полей одновременно, а также проверяется именно заполненность полей без значений, например если у поля задано “0” или значение “нет”, это тоже является заполненным полем в публикации. Если нужно проверять сами значение, то как и прежде задействуйте теги [if field = "значение"] текст [/if].

Для шаблонов вывода профиля пользователя (userinfo.tpl и profile_popup.tpl) добавлена поддержка новых тегов: [own-profile] Текст [/own-profile] которые выводят текст, заключённый в них, в случае если пользователь просматривает собственный профиль на сайте, а также теги [not-own-profile] текст [/not-own-profile] которые выводят текст, заключённый в них, в случае если пользователь просматривает чужой профиль на сайте.

Для шаблона вывода меню категорий (categorymenu.tpl) шаблонные теги [category-icon] текст [/category-icon] а также [not-category-icon] текст [/not-category-icon] были заменены на теги [cat-icon] текст [/cat-icon] и [not-cat-icon] текст [/not-cat-icon] соответственно. Связано это с тем, что данные теги имели тоже же название что и глобальные теги для всех шаблонов привязанные к публикациям, что приводило к их некорректной работе при просмотре разделов и публикаций.

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

Добавлен режим галереи при просмотре увеличенных изображений в панели управления DataLife Engine в разделе управления загруженными изображениям.

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

Добавлена возможность сохранения и вывода почтового адреса E-Mail пользователя в шаблоне добавления комментариев, в случае если комментарий оставляет незарегистрированный пользователей. Для этого в шаблоне addcomments.tpl добавлена поддержка нового тега {guest-mail}, который выводит E-Mail незарегистрованного пользователя, который он вводил во время предыдущего добавления комментария. Тем самым незарегистрованному пользователю не нужно будет вводить каждый раз свой почтовый адрес, когда он добавляет комментарий на сайте.

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

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

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

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

Визуальный редактор TinyMCE был переведён на использование новейшей линейки 7.xx

В случае выключения сайта в настройках скрипта, например для проведения каких-либо работ на сайте добавлена отправка корректных HTTP заголовков 503 о том, что страница временно недоступна. Это исключает попадание страниц с информацией о том, что сайт отключён в индекс поисковых систем, если в момент отключения сайта они посещают сайт для индексации.

В случае падения MySQL сервера, добавлена отправка более корректных HTTP заголовков 503 о том, что страница временно недоступна. Это исключает попадание страниц с ошибкой работы сайта в индекс поисковых систем, если в момент сбоя они посещают сайт.

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

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

Исправления безопасности при работе в разделе управления базой данный в панели управления DataLife Engine.

Исправлена проблема, при которой не работал переход к комментариям при просмотре последних новостей в случае, если была отключена поддержка ЧПУ в настройках скрипта.

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

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

Исправлена проблема, при которой в некоторых случаях могла происходит ошибка при добавлении или редактировании RSS информеров в панели управления DataLife Engine.

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

Исправлена проблема, при которой не действовала настройка групп пользователей “Скрывать только полную новость из недоступных разделов” при использовании тега пользовательского вывода {custom …}.

Исправлена проблема, при которой не корректно обрабатывался глобальный тег {news-id} в случае если просматривается несуществующая публикация.

Исправлена проблема, при которой мог неверно выводится заголовок публикации при использовании тега {news-title} в пользовательском выводе комментариев при использовании тега {customcomments ….}.

Исправлена проблема, связанная с некорректным определением даты публикации: “вчера и сегодня” в ряде случаев.

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

 

Список изменений в версии 17.1:

 

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

Добавлена возможность включать в карту сайта Sitemap также и ссылки на изображения, загруженные к публикациям. Данная опция может включаться либо отключаться непосредственно при создании карты в админпанели. При включении данной опции все изображения, которые были загружены к публикации будут также добавлены в карту согласно стандартам поисковой системы Google https://developers.google.com/search/docs/crawling-indexing/sitemaps/image-sitemaps?hl=ru. А если опция отключена, то карта будет создаваться без ссылок на изображения. Включение изображений в карту увеличивает время, необходимое для создания карты и требует дополнительных запросов к базе данных, поэтому вы сами решаете есть ли необходимость включать данную опцию или нет. При этом включение изображений в карту существенно улучшает индексацию изображений на вашем сайте.

Добавлена новая система уведомлений пользователей на сайте о успешном выполнении или наоборот о ошибке выполнения запрошенных ими действий на сайте. Ранее информация выводилась на странице в всплывающем окне DLEAlert, которое пользователю нужно было также дополнительно закрыть, нажав на кнопку “Ок” или на закрытие окна. Новая система выполнена в формате пуш уведомлений, которые всплывают в углу браузера и по прошествии времени автоматически закрываются, не требуя от посетителя сайта никаких действий. Разработчики дополнительных шаблонов, модулей и плагинов могут также использовать новые встроенные функции для вызова пуш уведомлений. Пуш о успешном выполнении вызывается функцией DLEPush.info (message, title), пуш о предупреждении вызывается функцией DLEPush.warning (message, title), пуш уведомления о возникновении ошибки вызывается функцией DLEPush.error (message, title). Разные типы уведомлений обладают специальным сигнализирующим оформлением.

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

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

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

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

Для системы плагинов в панели управления DataLife Engine добавлена возможность выполнить все необходимые действия с плагином непосредственно при редактировании самого плагина. Например, на странице редактирования плагина вы можете, не покидая страницу проверить обновления или обновить, скачать его или удалить. Ранее на страницы редактирования плагина можно было только отредактировать его. В общей сложности добавлено пять новых опций.

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

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

Добавлено автоматическое динамическое изменение содержимого тегов [add-favorites] текст [/add-favorites] и [del-favorites] текст [/del-favorites] при добавлении или удалении публикации в закладки на сайте. При этом не важно, где в шаблоне расположены эти теги и какого их содержимое. Содержимое будет обновляться автоматически при осуществлении AJAX действия, без необходимости перезагрузки страницы и пользователь автоматически будет видеть, что публикация была либо добавлена в закладки, либо удалена из них.

При выводе кнопки “Пожаловаться” в комментариях на сайте добавлена проверка, является ли пользователем автором данного комментария и если является, то кнопка жалобы для этого комментария у него не выводится, т.к. пользователи не могут жаловаться на собственные комментарии.

Добавлена поддержка нового глобального тега {lang text="LANG_PARAMETER"}, который предназначен для вывода информации из языкового файла website.tpl, который в данный момент используется, где LANG_PARAMETER это значение параметра, который необходимо вывести. Например, тег {lang text="attach_images"} выведет надпись “Прикрепить изображения” из языкового пакета, в случае использования русского языка и если используется английский язык, то “Attach Images”. Данный тег будет полезен при разработке дополнительных модулей и плагинов, когда вы можете разместить дополнительные языковые данные непосредственно в языковой пакет и автоматически выводить нужные вам фразы при смене языка пользователем на сайте, выводя значения в шаблоне в виде тега, а не прямого написания фразы.

Для шаблонов вывода кратких и полных новостей (shortstory.tpl и fullstory.tpl) добавлена поддержка нового тега {edit-date=формат даты} который выводит дату редактирования публикации в заданном в теге формате. Тем самым вы можете задавать свой собственный формат для даты редактирования, или выводить не только дату целиком, но и ее отдельные части. Формат даты задается задается согласно формату принятому в PHP. Например тег {edit-date=d} выведет день месяца, а тег {edit-date=F} выведет название месяца, а тег {edit-date=d-m-Y H:i} выведет полную дату и время.

Для шаблона вывода всплывающей карточки пользователя (profile_popup.tpl) добавлена поддержка нового тега {usertitle} который выводит логин пользователя в нужном вам месте. Ранее логин пользователя выводился только в заголовке карточки, теперь вы можете вывести его дополнительно в нужном вам месте в шаблоне.

Для дополнительных полей с типом “Дата и время” добавлена поддержка нового тега [xfvalue_X format="Формат"], где X это имя дополнительного поля, а “Формат” это формат вывода заданной в поле даты и времени. Тем самым в разных местах шаблона, вы можете выводить данное дополнительное поле в разных форматах даты и времени, а не только в том формате, которое указано для поля по умолчанию в настройках поля. Например тег [xfvalue_test format="j F Y H:i"] выведет дату и время указанное в поле в формате времени j F Y H:i.

Для шаблонов вывода профиля пользователя (userinfo.tpl и profile_popup.tpl) добавлена поддержка новых шаблонных тегов: [banned] текст [/banned] выводят текст заключённый в них если пользователь в данный момент забанен на сайте, [not-banned] текст [not-banned] выводят текст заключённый в них если пользователь не забанен на сайте, {ban-description} выводит причину по которой пользователь забанен, {ban-date} выводит дату до которой пользователь был забанен на сайте. Тем самым при помощи новых тегов вы можете выводить информацию для других посетителей сайта при посещении профиля пользователя, о том, что данный пользователь был забанен и по какой причине он был забанен.

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

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

Добавлена автоматическая поддержка всех поддерживаемых сервером часовых поясов, которые вы можете установить для сайта по умолчанию или пользователь сможет выбрать в своём профиле. А также в случае, если на сервере обновляются часовые пояса, то DataLife Engine автоматически будет их также использовать. Тем самым добавлено более 300 новых регионов для выбора часового пояса, и обновляться они будут автоматически в случае появления новых. Для удобства выбора часового пояса добавлен поиск по часовым поясам при выборе.

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

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

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

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

Добавлена поддержка IPv6 адресов для настройки “Список IP для которых разрешена авторизация в админпанели скрипта” в настройках админпанели. Тем самым если администратор сайта имеет IPv6 адрес вместо не IPv4 адреса, то для доступа к сайту он может ограничить доступ для необходимых ему IPv6 адресов.

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

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

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

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

Переработана и улучшена система определения цвета наложения водяных знаков на изображения. Теперь DataLife Engine лучше и качественнее определяет цветовые участки, на которые будет наложен водяной знак, что позволяет более точно определить какой водяной знак (темный или светлый) необходимо наложить в данном случае.

Улучшена система предварительной проверки e-mail адреса при регистрации пользователя на сайте и изменении адреса в профиле.

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

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

Добавлена возможность использования дополнительных полей с типом “Дата и Время” в главном шаблоне main.tpl при просмотре полных публикаций. Ранее данный тип полей не был доступен в полном объёме вывода согласно настройкам поля.

Добавлен автоматический сброс кеша файла пользовательских стилей adminpanel.css, расположенного в шаблоне, при очистке кеша в админпанели.

Для тегов [ifxfvalue ….] … [/ifxfvalue], предназначенного для проверки значений дополнительных полей, добавлена проверка по списку значений, если дополнительное поле имеет включённую опцию “Использовать как перекрестные ссылки”. Например, если поле имеет несколько значений, то проверка будет происходить не по полю целиком, а каждое значение в поле по отдельности. Аналогичное поведение проверки добавлено и для тегов [if ….] … [/if] для данных типов дополнительных полей.

Добавлена поддержка PHP линейки 8.3.xx

Визуальный редактор TinyMCE обновлён до актуальной линейки. Улучшена скорость его рендеринга.

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

В связи с тем что поисковые системы прекратили поддержку предварительных уведомлений от сайтов об изменении карты сайта sitemap.xml https://developers.google.com/search/blog/2023/06/sitemaps-lastmod-ping?hl=ru, данная функция уведомлений также была исключена из DataLife Engine. Теперь все происходит автоматически со стороны поисковых систем, вам достаточно просто добавить адрес в панели вебмастера поисковой системы и поисковые системы будут автоматически проверять и переиндексировать данный сайт.

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

Исправлена проблема, при которой невозможно было добавлять ответы на комментарии при включённой защите от спама reCAPTCHA v3.

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

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

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

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

Исправлена проблема, при которой пользователь с логином “noname”, не мог выставлять оценки для публикаций и комментариев.

Исправлена проблема, при которой при перестроении публикаций в админпанели, в индекс поиска публикаций на основе дополнительных полей попадали публикации, не опубликованные на сайте.

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

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

Исправлена проблема, при которой при просмотре полных новостей мог не работать непосредственный переход к нужному комментарию в блоке комментариев выводимых тегом {customcomments …..} если таковой присутствует на странице.

Исправлена проблема, при которой не очищался кеш для страниц полных новостей в случае редактирования публикации в админпанели, в случае если включён третий тип ЧПУ в настройках скрипта.

 

Список изменений относительно версии 16.1:

 

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

Для шаблона вывода профиля пользователя (userinfo.tpl), добавлена поддержка новых тегов: [delete] Текст [/delete] которые выводят текст заключённый в них в виде ссылки на удаление собственного профиля на сайте пользователем, в случае если это ему разрешено настройками групп пользователей.

Добавлен новый раздел “Хранилища” в панели управления DataLife Engine. В данном разделе вы можете добавлять различные системы внешних хранилищ, на которые в дальнейшем будут загружаться файлы с использованием DataLife Engine. Тем самым на сайт может использовать не одно определенное внешние хранилище для файлов, а разные. Причём для разных нужд могут использоваться разные хранилища. В данном разделе вы можете добавлять хранилища, отключать их, назначать какое-либо хранилище, хранилищем по умолчанию и т.д.

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

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

Для дополнительный полей с типами “Загружаемое изображение”, “Загружаемая галерея изображений”, “Загружаемый аудиоплейлист”, “Загружаемый видеоплейлист”, и “Загружаемый файл” добавлена возможность указания в настройках данных полей в какое хранилище необходимо загружать файлы. Тем самым вы можете загружать разные дополнительные поля в разные хранилища, которые указаны в разделе управления хранилищами.

Для дополнительных полей профилей пользователей добавлена возможность назначения опции “безопасный режим поля”, при данном типе поля полностью отключается возможность использования BB тегов или HTML тегов. А также данные поля можно будет безопасно использовать при выводе их в атрибутах HTML тегов шаблона.

При выводе списка последних комментариев на сайте, добавлен автоматический переход к выбранному комментарию при клике на заголовок новости к которому от относится. При этом автоматически ищется страница, на которой он находится, если, например комментарий находится на второй странице у новости, то пользователь автоматически попадёт на вторую страницу, а также браузер будет автоматически прокручен к данному комментарию. Тем самым пользователь будет видеть его сразу визуально. Для того чтобы добавить автоматический поиск при формировании пользовательских ссылок в шаблоне, вам необходимо добавить к ссылкам атрибут: onclick="findCommentsPage(this, '{id}', '{news-id}'); return false;"

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

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

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

Для пользовательского вывода публикаций с использованием тега {custom …} добавлена возможность пользовательского назначения периода, на который необходимо кешировать блок в параметре cache. Вы можете указывать период в минутах, часах или днях. Для указания времени кеширования используются значения с суффиксами “m”, “h” и “d”. Например, если вы укажите {custom cache="30m" ….} то блок будет принудительно закеширован на 30 минут, если вы укажите {custom cache="2h" ….}, то блок будет кеширован на 2 часа, если указать {custom cache="1d" ….} то блок будет кеширован на один день. Если указать просто {custom cache="yes" ….} то как и ранее будет включён автоматический контроль кеша и он будет обновляться по мере обновления информации. Указание времени принудительного кеширования позволит сэкономить ресурсы сервера если блок нет необходимости обновлять сразу, например, при добавлении новых публикаций или комментариев.

Для пользовательского вывода комментариев с использованием тега {customcomments …} добавлена возможность пользовательского указания периода, на который необходимо кешировать блок в параметре cache. Вы можете указывать период в минутах, часах или днях. Для указания времени кеширования используются значения с суффиксами “m”, “h” и “d”. Например, если вы укажите {customcomments cache="30m" ….} то блок с комментариями будет принудительно кеширован на 30 минут, если вы укажите {customcomments cache="2h" ….}, то блок с комментариями будет кеширован на 2 часа, если указать {customcomments cache="1d" ….} то блок с комментариями будет кеширован на один день. Если указать просто {customcomments cache="yes" ….} то как и ранее будет включён автоматический контроль кеша и он будет обновляться по мере обновления информации. Указание времени принудительного кеширования позволит сэкономить ресурсы сервера если блок нет необходимости обновлять сразу если меняется информация на сайте.

Для панели управления DataLife Engine добавлена полная поддержка языков, использующих способ написания текста справа налево. Для этого в языковые пакеты добавлена директива “direction” в которой указывается тип написания текста для данного языка ‘ltr’ либо ‘rtl’. При этом в случае, если используется тип написания справа налево, то DataLife Engine подключит для панели управления специально подготовленный и адаптированный для этого файл CSS со стилями панели управления, который будет корректно зеркально отображать всю панель управления. Тем самым пользователи могут использовать необходимое для данного языка оформление панели.

Для визуальных редакторов WISYWIG добавлена поддержка языков, использующих написание текста справа налево. Для этого также используется значение директивы “direction”, которая устанавливается в языковых пакетах, при создании перевода на нужный язык. Указав написание справа налево “rtl” в директиве, редакторы автоматически будут использовать данный режим написания текста.

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

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

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

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

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

Для модуля “Перекрестные ссылки” в панели управления, добавлена возможность отключать или включать ключевые слова Тем самым при необходимости вы можете временно выключить или включить замену нужных вам слов без необходимости их удаления и повторного добавления.

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

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

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

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

Для суммарного рейтинга публикаций пользователя добавлено использование нового тега {ratingscore} в шаблонах вывода профиля пользователя и быстрой карточки пользователя (userinfo.tpl и profile_popup.tpl). Данный тег выводит число усреднённого рейтинга всех публикаций пользователя, от одного до пяти, с сохранением дробного значения. Например, в зависимости от выставленной оценки это может быть 1.6 или 4.2 и т.д. Данный тег позволяет задать, например, собственное оформление звезд рейтинга с частичным заполнением, а не только 2 или 4 заполненных звезды.

Для суммарного рейтинга комментариев пользователя добавлено использование нового тега {commentsratingscore} в шаблонах вывода профиля пользователя и быстрой карточки пользователя (userinfo.tpl и profile_popup.tpl). Данный тег выводит число усредненного рейтинга всех комментариев пользователя, от одного до пяти, с сохранением дробного значения. Например, в зависимости от выставленной оценки это может быть 1.6 или 4.2 и т.д. Данный тег позволяет задать, например, собственное оформление звезд рейтинга с частичным заполнением, а не только 2 или 4 заполненных звезды.

Внесены изменения в работу тега [active] … [/active] для шаблона меню категорий. Теперь данный тег выводит текст, заключённый в них и для родительских категорий, в случае если категория, в которую зашёл посетитель сайта является вложенной субкатегорией данных родительских категорий. Ранее данный тег выводил текст только для одной категории, непосредственно в той в которой находился посетитель. Тем самым вы можете посвечивать в том числе и активные родительские категории.

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

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

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

Для визуального редактора TinyMCE добавлена возможность при написании комментариев вставлять изображения из буфера обмена и путём переноса картинки в редактор и автоматически их загружать на сервер, в случае если для загрузки комментариев включена и используется упрощённая форма загрузки комментариев. То есть вы можете использовать как упрощённую форму и вставлять в текст редактора, так и автоматически загружать в поле самого текста в редакторе.

Для визуального редактора TinyMCE добавлена возможность вставки раскрывающихся списков (Accordion), а также возможность управления ими. Данные списки вставляются с использованием HTML5 тегов “details” и “summary”.

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

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

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

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

Внесены изменения в логику обработки тегов [if field = "значение"] текст [/if], теперь они выполняются раньше чем происходит подключение и обработка тегов {custom ….} и {include file=”….”}. Тем самым вы можете использовать данные теги внутри этих конструкций, не создавая избыточной нагрузки на сервер и выполняя их только если выполняются условия той конструкции, в которой они находятся.

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

Обновлена инструкция по созданию приложения на сервисе Google для использования авторизации на сайте при помощи Google аккаунтов.

Переработана система поиска похожих новостей при редактировании публикаций в панели управления. Теперь система данного поиска учитывает какой режим поиска включён в настройках скрипта: “Простой” или “Полнотекстовый”.

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

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

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

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

Обновлён визуальный редактор TinyMCE до актуальной версии. Было исправлены различные небольшие ошибки в работе редактора.

Исправлена проблема, при которой некорректно обрабатывался тег {THEME} при использовании его в шаблоне вывода результатов быстрого поиска по сайту.

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

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

Исправлена проблема с некорректным отображением раздела редактирования дополнительных полей публикаций и пользователей в панели управления DataLife Engine.

Исправлена проблема, при которой вложенные комментарии отображались на один уровень меньше, чем указано в настройке: “Максимальный уровень вложенности комментариев” в панели управления скриптом.

Исправлена проблема, при которой при отключении комментариев на сайте, переставала корректно работать пользовательская сортировка публикаций по просмотрам на сайте.

 

Список изменений относительно версии 16.0:

 

Добавлена поддержка двухфакторной авторизации с использованием одноразовых паролей из приложения Google Authenticator или любых других приложений, поддерживающих одноразовые OTP пароли. Пользователь может сам выбрать в своём профиле, какую двухфакторную авторизацию он хочет использовать. Он может выбрать использование приложений, либо одноразовый пароль будет отправляться по E-Mail. Для использования могут быть использованы любые приложения, поддерживающие OTP верификацию, включая встроенные средства операционных систем смартфонов, а не только Google Authenticator.

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

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

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

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

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

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

При редактировании комментариев на сайте, в случае если осуществляется вывод загруженных изображений с использованием тега {images} в комментариях, добавлен вывод списка загруженных изображений для быстрого удаления изображений из редактируемого комментария.

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

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

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

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

Для шаблона добавления новостей (addnews.tpl) добавлена поддержка новых тегов: [allow-shortstory] текст [/allow-shortstory] которые выводят текст заключённый в них в случае, если в настройках скрипта включена поддержка поля краткого описания, и скрывают текст в случае данное поле отключено. Также добавлены теги: [allow-fullstory] текст [/allow-fullstory] которые выводят текст заключённый в них в случае, если в настройках скрипта включена поддержка поля полного описания, и скрывают текст в случае данное поле отключено.

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

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

Добавлена возможность автоматически конвертировать загружаемые изображения в один выбранный формат в настройках скрипта формат. Вместо настройки автоматического конвертирования загружаемых изображений в формат WebP, вы можете выбрать один из четырех форматов: PNG, JPG, WEBP, AVIF. Либо вы можете вообще отключить автоматическое конвертирование в другой формат и изображение будет оставаться в том формате, в котором оно изначально.

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

Для тегов вывода изображений и встроенных фреймов (img и iframe) добавлена возможность добавлять атрибут loading="lazy" при добавлении публикаций. Для добавления нативной отложенной загрузки изображений и фреймов, браузерами, которые поддерживают данный атрибут.

Добавлена поддержка новых глобальных тегов: [category-description] текст [/category-description], которые выводят текст заключённый в них если просматриваемая категория имеет заданное описание категории. А также добавлена поддержка тегов: [not-category-description] текст [/not-category-description], которые выводя текст заключённый в них, если категория не имеет описания. Данные теги будут полезны при оформлении различных блоков шаблона для случаев, когда описание задано, и для случаев, когда описание отсутствует.

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

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

Добавлено автоматическое переключение на тёмную тему в панели управления DataLife Engine (в случае если включено автоматическое включение ночного режима) в зависимости от установленной темы операционной системы. Теперь переключение будет не только по времени, но и в случае, если тема операционной системы была переключена на тёмную, то также будет произведено переключение и в панели управления.

Для шаблона вывода RSS добавлена поддержка нового тега {full-story limit="X"} который выводит текст полной новости без HTML форматирования, при этом сам текст публикации сокращается до указанного X количества символов. Данный тег будет полезен если сайт добавляется в сервис Дзен Новости (Яндекс новости), совместно с использованием тега <yandex:full-text>.

При использовании сравнения с использованием тегов [if field = "значение"] текст [/if] для дополнительных полей с типом “дата” а также “дата и время” добавлена автоматическая проверка именно как значения даты. При сравнении вы можете использовать дату в английском формате, например "2020-09-01" или "10 September 2020" или "next Thursday" или "+1 day" или "next Thursday" или в unix формате, а также использовать не только знак равенства, но и проверять больше ли дата или меньше указанного значения. Ранее данный тип полей сравнивался просто как текстовое значение.

Улучшена система сравнения с использованием тегов [if field = "значение"] текст [/if] при использовании в сравнении значения дополнительных полей. Проводится дополнительная конвертация ранее экранированных символов в обычные символы, что упрощает сравнение.

Упрощена система расширенной регистрации на сайте, посетителю при регистрации потребуется меньше шагов при прохождении расширенной регистрации на сайте.

Для шаблонов вывода кратких и полных новостей, а также для шаблона главной страницы (shortstory.tpl, fullstory.tpl, main.tpl) добавлена поддержка новых тегов: [xfvalue_X video="Nr"] который выводит загруженные для дополнительного поля с типом "Видео плейлист" видео c выбранным номером по отдельности. Где "X" это имя дополнительного поля, а "Nr" это номер видео из плейлиста, [xfvalue_X video-url="Nr"] который выводит загруженные для дополнительного поля с типом "Видео плейлист" URL загруженного, по отдельности. Где "X" это имя дополнительного поля, а "Nr" это номер видео из плейлиста, [xfvalue_X video-description="Nr"] который выводит загруженные для дополнительного поля с типом "Видео плейлист" описания видео, по отдельности. Где "X" это имя дополнительного поля, а "Nr" это номер видео из плейлиста. [xfgiven_X video="Nr"] текст [/xfgiven_X video="Nr"] которые выводят текст заключённый в них если видео с указанным номером присутствует и загружено в дополнительном поле, где X это имя дополнительного поля, а Nr это номер видео, [xfnotgiven_X video="Nr"] Текст [/xfnotgiven_X video="Nr"] которые выводят текст заключённый в них если видео с указанным номером отсутствует в дополнительном поле, где X это имя дополнительного поля, а NR это номер видео. Все данные теги будут полезны при использовании собственных сторонних видео плееров, для организации видео просмотра на своём сайте.

Для шаблонов вывода кратких и полных новостей, а также для шаблона главной страницы (shortstory.tpl, fullstory.tpl, main.tpl) добавлена поддержка новых тегов: [xfvalue_X audio="Nr"] который выводит загруженные для дополнительного поля с типом "Аудио плейлист" видео по отдельности. Где "X" это имя дополнительного поля, а "Nr" это номер аудио файла из плейлиста, [xfvalue_X audio-url="Nr"] который выводит загруженные для дополнительного поля с типом "Аудио плейлист" URL загруженного, по отдельности. Где "X" это имя дополнительного поля, а "Nr" это номер аудио файла из плейлиста, [xfvalue_X audio-description="Nr"] который выводит загруженные для дополнительного поля с типом "Аудио плейлист" описания аудио файла, по отдельности. Где "X" это имя дополнительного поля, а "Nr" это номер аудио файла из плейлиста. [xfgiven_X audio="Nr"] текст [/xfgiven_X audio="Nr"] которые выводят текст заключённый в них если аудио с указанным номером присутствует и загружено в дополнительном поле, где X это имя дополнительного поля, а Nr это номер аудио файла, [xfnotgiven_X audio="Nr"] Текст [/xfnotgiven_X audio="Nr"] которые выводят текст заключённый в них если аудио с указанным номером отсутствует в дополнительном поле, где X это имя дополнительного поля, а Nr это номер аудио файла. Все данные теги будут полезны при использовании собственных сторонних аудио плееров, для организации аудио просмотра на своем сайте.

Изменено формирование мета тега заголовка (Title) страницы при показе главной страницы в случае, если установлено использование статической страницы main в качестве главной страницы. Теперь в заголовке используются только основной заголовок, указанный в настройках скрипта в панели управления.

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

Улучшена поддержка дополнительный полей, имеющих тип “Одна строка” c опцией безопасного режима. Для данных полей добавлена возможность использования URL в качестве контента, и они могут использоваться для вставки ссылок в публикациях.

Внесены изменения, направленные на предотвращение возникновения ссылок на публикации, длина которых превышает суммарный лимит на длину URL установленными стандартами в 255 символов.

Обновлена система показа уменьшенных копий изображений. Внешний вид стал ещё более современным, добавлена более плавная анимация, больше уровней масштабирования.

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

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

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

Существенно ускорена работа DLE и снижена нагрузка на сервер при формировании RSS потоков для Турбо страниц и Яндекс Дзена.ли остатки HTML сущностей в данные ссылки.

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

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

Минимальным требованием для работы DLE установлено наличие на сервере PHP 8.0 и выше. Ранее минимальной версией PHP являлось 7.4. Помимо этого были снижены рекомендуемые требования к версии PHP, теперь для работы всех функций DLE также достаточно иметь линейку PHP 8.0.x, а не 8.1.x

Обновлён визуальный редактор TinyMCE до актуальной линейки.

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

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

Исправлена проблема, при которой при изменении поисковой строки в поиске не происходил возврат на первую страницу поиска, если пользователь находится не на первой странице и использует только клавиатуру.

Исправлена проблема, при которой некорректно работал тег {related-ids} в шаблоне полной новости, при первом показе публикации на сайте.

Исправлена проблема, при которой не работала проверка некоторых полей в теге [if field = "значение"] текст [/if] при подключении пользовательского вывода публикаций с использованием тега {custom …}

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

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

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

Исправлена проблема, при которой могла не происходит разблокировка кнопки загрузки изображений для дополнительных полей с типом “Галерея изображений”, при переносе изображения из одной галереи в другую.

Список изменений относительно версии 15.3:

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

Для тега [mediа=…] добавлена возможность вставки коротких видео (шортсов), а также плейлистов с сервиса Youtube. Ранее была доступна вставка только обычных видеороликов.

Улучшена система автоматической транслитерации ссылок для ЧПУ URL, чтобы при формировании ссылок не попада

 

Добавлена автоматическая поддержка загрузки HiDPI (Retina) изображений и скриншотов для публикаций и статических страниц на сайте. В менеджере загрузки изображений, перед загрузкой картинки вы можете указать что изображение является изображением с высокой плотностью пикселей, например это скриншот сделанный на HiDPI (Retina) экране, и DataLife Engine при загрузке автоматически создаст две копии изображения одна для обычных экранов, вторая для экранов высокой плотности, и при просмотре сайта посетителем, в случае если у него экран высокой плотности, он будет видеть изображение высокой плотности пикселей, а если обычный экран, то обычное изображение. Тоже самое происходит и для уменьшенных копий изображений. Тем самым вы можете автоматически публиковать на своём сайте качественные скриншоты высокой чёткости. В качестве примера реализации вы можете посмотреть изображения, опубликованные в данной новости. Вставка изображений высокой чёткости поддерживается только при использовании визуальных редакторов при написании публикации.

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

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

Переработана система формирования RSS потоков вашего сайта. В связи с тем, что Яндекс и дзен разделились, теперь невозможно формировать контент в едином потоке. Поэтому DataLife Engine теперь транслирует одновременно три разных потока для разных сервисов. По адресу http://вашсайт/rss.xml транслируется RSS в общем формате для различных систем и сервисов и полностью соответствует стандартам RSS 2.0. По адресу http://вашсайт/rssturbo.xml транслируется RSS поток публикаций для Яндекс Турбо, а по адресу http://вашсайт/rssdzen.xml транслируется RSS поток публикаций для Дзена. Теперь потоки полностью независимы и не пересекаются между собой и работают отдельно. Точно также действует и разделение для категорий сайта и публикаций пользователей. Подробно все адреса для RSS потоков вы можете увидеть в документации по скрипту. Также, в связи с этим формат шаблона для RSS потоков был изменён. Для блока стандартного RSS используются новые теги [rss] ... [/rss], для блока турбо новостей используются теги [turbo] ... [/turbo], для блока дзен новостей используются теги [dzen] ... [/dzen]. После обновления вам необходимо привести свой шаблон RSS в соответствие с новым режимом работы. В качестве примера вы можете взять стандартный шаблон temlates/rss.tpl из архива дистрибутива.

Добавлена поддержка WebDAV внешний хранилищ для загрузки и хранения изображений и файлов. Тип данного хранилища выбирается в настройках скрипта в панели управления. Там же задаются и параметры для соединения и использования данного хранилища.

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

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

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

Добавлена система автоматического сброса кэша статических JS и CSS файлов для браузеров у всех посетителей сайта. При нажатии в панели управления DataLife Engine функции "Очистить кэш", будет сброшен специальный уникальный ID кэша, который используется скриптом при подключении статических CSS и JS файлов. В случае если вы в шаблоне подключаете стили и скрипты с использованием тега {include ...} то кэш браузера будет сброшен и у них. Тем самым при внесении, например изменений в стили шаблона, вы можете сбросив кэш, сделать так, чтобы все без исключения посетители вашего сайта сразу увидели обновлённую информацию и вёрстку, не дожидаясь пока устареет кэш в их браузерах.

Для всех шаблонов добавлен новый глобальный тег {cache-id} который выводит текущий актуальный ID кэша, который вы можете использовать шаблонах при подключении своих статических файлов минуя такие внутренние функции DLE как {include file=....}, и их браузерный кэш будет автоматически сбрасываться при нажатии администратором сайта на кнопку "Очистить кэш" в панели управления. Например, вы можете использовать для подключения своих статических файлов конструкцию <link href="{THEME}/font/styles.min.css?v={cache-id}" rel="stylesheet" type="text/css"> для подключения статического файла стилей.

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

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

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

При написании комментариев и персональных сообщений на сайте с использованием визуального редактора TinyMCE добавлена возможность быстрой вставки логина пользователя со ссылкой на его профиль. Достаточно набрать символ @ после чего начать набирать логин пользователя, DataLife Engine автоматически проведёт поиск по базе данных пользователей и предложит варианты для автоматической вставки. Вставляемый контент после публикации автоматически преобразуется в ссылку на карточку пользователя, при клике на которую вы можете увидеть информацию о пользователе, написать ему сообщение и посетить его профиль.

Сервис онлайн просмотра документов на сайте был заменён на сервис от Microsoft, вместо использовавшего ранее от Google. Тем самым обеспечивается более полная совместимость при просмотре, а также была добавлена поддержка дополнительных новых форматов, доступных к онлайн просмотру. Полный список поддерживаемых форматов: "doc", "docx", "docm", "dotm", "dotx", "xlsx", "xlsb", "xls", "xlsm", "pptx", "ppsx", "ppt", "pps", "pptm", "potm", "ppam", "potx", "ppsm", "odt", "odx"

Добавлено использование полноценных редакторов для модуля "RSS импорт новостей". В зависимости от того какой редактор был включён для публикаций в панели управления, тот и будет автоматически подключаться и использоваться при редактировании краткой публикации и при получении полной публикации.

При импортировании публикаций в панели управления из различных RSS источников добавлено автоматическая конвертация ссылок на изображения в случае, если в них указан путь без домена. Например, если на сайте источнике стоит ссылка "/image/file.jpg", то она автоматически будет сконвертирована на ссылку включающую домен источника "https://domain.com/image/file.jpg", тем самым изображения будут отображаться в публикациях корректно.

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

Для файлов параметров шаблона (info.json), который находится в папке шаблонов добавлена возможность указать к какому типу относится шаблон, к светлому или тёмному. Для этого используется параметр "type": "light" для указания что шаблон является светлым и "type": "dark" для указания что шаблон является темным. При включении что шаблон является темным, все визуальные редакторы автоматически перейдут на режим работы тёмного цвета и будут иметь соответствующее тёмное оформление, без необходимости вносить правки в стили шаблона вручную.

Для шаблонов вывода полной новости (fullstory.tpl) добавлено использование нового тега {related-ids}, который выводит список ID похожих публикаций для данной новости. Данный тег полезен при совместном использовании с тегом {custom ...}, например тег {custom id="{related-ids}"} выведет все похожие новости для данной публикации с поддержкой всех возможных шаблонных тегов в отличии от базового тега {related-news} в котором поддерживаемые теги существенно ограничены в целях обеспечения большей производительности. Тем самым вы получаете больше возможностей по оформлению публикаций на сайте.

Для шаблона вывода персональных сообщений (pm.tpl) добавлена поддержка нового тега: {login} который выводит логин автора персонального сообщения, без какого-либо дополнительного оформления.

Для шаблона вывода персональных сообщений (pm.tpl) добавлена поддержка нового тега: {date=формат даты} который выводит дату в заданном в теге формате. Тем самым вы можете выводить не только дату целиком, но и её отдельные части. Формат даты задаётся согласно формату принятому в PHP. Например тег {date=d} выведет день месяца публикации новости или комментария, а тег {date=F} выведет название месяца, а тег {date=d-m-Y H:i} выведет полную дату и время.

Для шаблонов вывода профиля пользователей, комментариев, персональных сообщений (comments.tpl, pm.tpl, userinfo.tpl, profile_popup.tpl) добавлена поддержка нового тега: {lastdate=формат даты} который выводит последнего посещения сайта пользователем в заданном в теге формате. Тем самым вы можете выводить не только дату целиком, но и её отдельные части или же использовать свой формат даты, а не заданный по умолчанию. Формат даты задаётся согласно формату принятому в PHP. Например тег {lastdate=d} выведет день месяца, а тег {lastdate=F} выведет название месяца, а тег {lastdate=d-m-Y H:i} выведет полную дату и время.

Для шаблонов вывода профиля пользователей, комментариев, персональных сообщений (comments.tpl, pm.tpl, userinfo.tpl, profile_popup.tpl) добавлена поддержка нового тега: {registration=формат даты} который выводит дату регистрации пользователя в заданном в теге формате. Тем самым вы можете выводить не только дату целиком, но и её отдельные части или же использовать свой формат даты, а не заданный по умолчанию. Формат даты задаётся согласно формату принятому в PHP. Например тег {registration=d} выведет день месяца, а тег {registration=F} выведет название месяца, а тег {registration=d-m-Y H:i} выведет полную дату и время.

Для метатегов страниц вашего сайта добавлено автоматическое использование тега <link rel="preconnect" href="http://yourwebsite.com/" fetchpriority="high">, которое позволяет оставлять браузеру соединение открытым, а не открывать его повторно при обращении к другим страницам вашего сайта. Что позволяет немного улучшить и ускорить отзывчивость вашего сайта, особенно на медленных интернет-соединениях.

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

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

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

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

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

Добавлено автоматическое удаление карты статических страниц из карты сайта, в случае если на сайте отсутствуют статические страницы.

Добавлено автоматическое удаление карты категорий из карты сайта, в случае если на сайте отсутствуют категории.

Для комментариев и персональных сообщений изменён вывод даты комментария или персонального сообщения при использовании тега {date}. При выводе даты введён более расширенный учёт того, сколько времени прошло с момента сообщения, если прошли минуты, то будет указано сколько минут прошло, если часы, то сколько прошло часов, если прошло менее недели то будет указан день недели и время, и т.д. Тем самым всегда наглядно будет видно насколько старый данный комментарий.

Для шаблонных тегов {registration} и {lastdate} которые выводят дату регистрации и дату последнего посещения пользователя, по всему сайту, где они используются изменён вывод данной даты. При выводе даты введён более расширенный учёт того, сколько времени прошло с момента данной даты. Если прошли минуты, то будет указано сколько минут прошло, если часы, то сколько прошло часов, если прошло менее недели, то будет указан день недели и время. Тем самым всегда наглядно будет видна, например последняя активность пользователя на сайте. Например, был на сайте 20 минут назад, или вчера в 12:20 и т.д.

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

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

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

Все правила в файлах .htaccess для управления сервером Apache были переписаны таким образом, чтобы одновременно поддерживать все линейки Apache, как линейки 2.2.x так и линейки 2.4.x, даже в случае отключения некоторых модулей.

Добавлена поддержка работы JS cкриптов DataLife Engine на некоторых типах браузеров, встроенных в телевизоры.

Добавлена поддержка загрузки изображений и файлов для дополнительных полей публикаций методом "Drag & Drop". Для начала загрузки файлов достаточно перенести файл мышкой с компьютера в область нахождения кнопки загрузки данного поля.

Рейтинг для публикаций на сайте был переведён на использование data-xx атрибутов вместо использования id атрибутов в HTML. Тем самым вы можете использовать в одной публикации вывод рейтинга в нескольких местах одновременно, например внизу и вверху публикации, для более удобного выставления рейтинга на сайте. Автоматическое обновление также будет происходит в нескольких местах одновременно, где он был установлен.

Рейтинг для комментариев на сайте был переведён на использование data-xx атрибутов вместо использования id атрибутов в HTML. Тем самым вы можете использовать в одном комментарии вывод рейтинга в нескольких местах одновременно, например внизу и вверху комментария, для более удобного выставления рейтинга. Автоматическое обновление также будет происходит в нескольких местах одновременно, где он был установлен.

По настойчивым многочисленным просьбам, убран автоматический перенос на новую строку после вставки ника пользователя в поле комментария, в случаях ответов на комментарии при отключённых древовидных комментариях. А при использовании визуальных редакторов будет использоваться быстрая вставка ссылки на карточку пользователя.

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

Улучшена система навигации в модуле управления RSS импортом публикаций в панели управления DataLife Engine.

Улучшено визуальное оформление редакторов Froala и TinyMCE при использовании темной темы в панели управления DataLife Engine

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

Обновлены внутренние сторонние библиотеки, а также jQuery и визуальный редактор TinyMCE до актуальных версий.

Добавлена возможность загрузки на сервер изображений в формате AVIF в случае, если используется библиотека GD2 на сервере. Данная возможность используется только если на сервере установлена версия PHP 8.1 и выше, а также имеется поддержка декодирования данных изображений со стороны сервера.

Добавлена поддержка PHP линейки 8.2.xx

Исправлена проблема, при которой не работала проверка по некоторым полям в шаблоне вывода кратких новостей для тега [if field = "значение"] текст [/if] из тех что описаны в документации по шаблонам.

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

Исправлены проблемы возможной некорректной работе вставки смайлов в редакторе TinyMCE, при использовании сайта на двух разных протоколах http и https одновременно.

Исправлена проблема, при которой не работало кеширование вывода комментариев при помощи тега {customcomments ....}

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

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

 

Список изменений относительно версии 15.2:

 

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

Добавлена возможность упрощённой, быстрой и удобной загрузки изображений к комментариям. Теперь вы можете просто разместить в шаблоне добавления комментариев (addcomments.tpl) тег {image-upload}, который выведет специальное поле куда пользователь может переместить картинки для загрузки, либо выбрать их с компьютера. При этом пользователю не нужно будет ничего загружать отдельно, все будет загружено автоматически, как только пользователь нажмёт на кнопку добавить комментарий. При этом поместив файлы, при желании он может их убрать ещё до отправки комментария, либо поменять их порядок сортировки. В случае если в шаблон помещён тег для быстрой загрузки, в редакторе автоматически отключится кнопка обычной загрузки файлов, и она не будет отображаться. А в случае, если тег не размещён то загрузка и вставка изображений будет как и ранее. Вывести же все загруженные изображения в комментарии вы сможете в шаблоне вывода комментариев в любом удобном для вас месте специально предусмотренными тегами.

Для шаблона вывода комментариев (comments.tpl) добавлена поддержка новых тегов: [images] текст [/images] которые выводят заключенный в них текст, в случае если к комментарию были загружены изображения, а также тег {images} который выведет все загруженные для комментария изображения в виде галереи изображений. Данная галерея изображений может увеличивать по клику уменьшенные копии и перелистывать изображения между собой.

Настройки разрешения вставки в текст комментария изображений и разрешения загрузки изображений к комментариям стали полностью независимыми. Теперь вы можете запретить вставку картинок в текст комментария, но при этом разрешить загрузку картинок к комментариям и выводить загруженные изображения в строго отведённых для этого местах в шаблоне вывода комментариев при помощи тега {images}.

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

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

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

Добавлена возможность загружать файлы на сервер любых размеров, независимо от настроек и ограничений серверного программного обеспечения. Зачастую на сервере установлены небольшие лимиты на максимальный размер передаваемого файла на сервер, и для загрузки больших файлов необходимо увеличивать серверные лимиты, что не всегда возможно, а также требует большего расхода памяти. Теперь DataLife Engine автоматически разбивает передаваемый файл на части и отправляет файл по частями до полной его загрузки, и уже на сервере объединяет в единый файл. Тем самым вы можете загружать файлы на сервер независимо от лимитов хостинга, и действуют только ограничения, установленные в настройках DataLife Engine, например вы можете загружать файлы весом несколько гигабайт имея лимиты хостинга всего 2 мегабайта на загрузку файлов, установив такое разрешение только в настройках DataLife Engine.

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

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

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

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

Для модуля "Фильтр по: IP, Логину или E-Mail" в админпанели DataLife Engine добавлена система поиска, которая позволяет быстро найти нужный забанненый аккаунт. Также поиск ведётся и по причине бана, тем самым можно также быстро отсортировать забаненных пользователей.

Для модуля "Фильтр по: IP, Логину или E-Mail" в админпанели DataLife Engine добавлена разбивка на несколько страниц в случае, если содержится большое количество адресов. Тем самым навигация и управление заблокированными пользователями становиться проще при их большом количестве.

Визуальный редактор TinyMCE был переведён на использование актуальной линейки 6.xx и обновлён до актуальной версии. Новая линейка более быстро и надёжно работает с современными браузерами, используя их внутренние API и функции для парсинга контента.

При использовании на сайте визуального редактора TinyMCE в качестве основного для публикаций добавлена возможность автоматически создавать при написании публикации, таблицу содержания публикации с ссылками на заголовки. Автоматическое содержание расставляется на основе наличия в тексте заголовков (тегов H2 - H6).

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

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

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

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

Для системы шаблонов добавлена поддержка вложенного подключения файлов шаблонов с использованием тега {include file=...} с полным сохранением поддержки тегов в подключаемых вложенных шаблонах. Ранее поддерживалось только однократное вложение, после чего поддержка тегов автоматически отключалась во избежание вложенного бесконечного зацикливания. Например, ранее вы могли в main.tpl подключить шаблон {include file="header.tpl"} сохранением тегов из шаблона main.tpl, но из шаблона header.tpl не могли подключить ещё один например menu.tpl с сохранением тегов из main.tpl. Теперь это возможно. Вы можете в main.tpl подключить header.tpl из header.tpl подключит menu.tpl, а из menu.tpl подключить category.tpl и т.д. и везде будет сохраняться работоспособность шаблонных тегов родительского шаблона. Во избежания ошибок в вёрстке и бесконечного зацикливания, уровень максимальной вложенности ограничен 200 подшаблонами, что достаточно для шаблонов любой сложности.

Для системы шаблонов добавлена возможность подключения CSS и JS файлов с использованием тега {include file=...}. При этом подключаемые таким способом файлы будут подключаться в соответствующих секциях, где и другие служебные JS и CSS файлы Datalife Engine, независимо от расположения тегов {include ...} в шаблоне. Также если в настройках скрипта будет включено сжатие CSS и JS, то данные файлы будут также объединяться и сжиматься автоматически вместе с другими файлами. Пример использования данного тега в шаблоне: {include file="{THEME}/css/styles.css"} укажет что нужно подключить данный файл к основному блоку с CSS файлами. Также вы можете подключать таким способом и внешние файлы, которые находятся на других сайтах и доменах.

Добавлены новые глобальные теги для шаблонов: [script] код [/script] в которых вы можете разместить использовать исполняемый jаvascript код. При этом данных код будет размещён непосредственно в исполняемом блоке других JS кодов DataLife Engine, будет запущен непосредственно после загрузки других JS скриптов, которые используются при подключении. Тем самым вы можете упорядочить все JS коды в шаблоне, стандартизировать их порядок исполнения, и в будущем избегать каких-либо конфликтов.

Для шаблона вывода полной новости (fullstory.tpl) добавлена поддержка новых тегов: [allow-comments-subscribe] текст [/allow-comments-subscribe], которые выводят текст заключённый в них, в случае если пользователю разрешено подписываться на комментарии. Тем самым вы можете сделать оформление ссылки на подписку на комментарии в нужном вам блоке и скрывать его если подписка запрещена.

Для шаблона добавления комментария (addcomments.tpl) добавлена поддержка новых тегов: [allow-comments-subscribe] текст [/allow-comments-subscribe], которые выводят текст заключённый в них, в случае если пользователю разрешено подписываться на комментарии. Тем самым вы можете сделать оформление ссылки на подписку на комментарии в нужном вам блоке и скрывать его если подписка запрещена.

Для шаблона добавления комментария (addcomments.tpl) добавлена поддержка нового тега {comments-subscribe} который выводит чекбокс на подписку на комментарии в форме добавления комментария. Теперь данный чекбокс не будет выводится принудительно вместе с редактором, а вы его можете разместить в шаблоне в нужном вам блоке и в нужном вам визуальном оформлении.

Для шаблонов вывода полной новости и добавления комментария (fullstory.tpl и addcomments.tpl) добавлена поддержка новых тегов [comments-unsubscribe] текст [/comments-unsubscribe] которые выводят текст заключенный в них в виде ссылки на отписку от комментариев к данной публикации. Тем самым пользователи могут отписаться только от одной конкретной новости на сайте, ранее для этого им нужно было отписываться от всех публикаций.

Для шаблонов профиля пользователя (userinfo.tpl) добавлена поддержка новых тегов условий сравнения значений. Например, тег [if field = "значение"] текст [/if] выведет текст заключённых в них если значения поля равно указанному значению. 

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

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

Добавлена возможность использовать теги вывода дополнительных полей публикаций [xfvalue_X] в качестве параметров для тега пользовательского вывода публикаций {custom ...}, в случае его использования в общем шаблоне main.tpl. Например, вы можете использовать такие конструкции как {custom tags="[xfvalue_test]" template="test"} для вывода публикаций по определенному тегу, заданному в дополнительном поле новости.

Добавлена возможность добавить пользователя в список игнорируемых непосредственно при просмотре его профиля на сайте. Для этого для шаблона просмотра профиля пользователя (userinfo.tpl) добавлена поддержка тегов: [ignore] текст [/ignore] которые выводят текст заключённый в них в виде ссылки на добавление пользователя в список игнорируемых.

Для шаблона вывода карточки пользователя (profile_popup.tpl) также добавлена поддержка новых тегов [ignore] текст [/ignore] которые выводят текст заключённый в них в виде ссылки на добавление пользователя в список игнорируемых.

Расширены возможности по игнорированию пользователей на сайте. А именно добавлен запрет на отправку e-mail писем от пользователя, если он находится у получателя в списке игнорируемых. Тем самым если один пользователь добавил в игнорируемые другого, то он не будет получать не только персональные письма, но и e-mail письма через обратную связь на сайте.

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

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

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

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

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

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

Добавлено использование настроек скрипта: "Устанавливать параметр NOREFERRER для внешних ссылок" для публикаций и комментариев также и на ссылки, которые публикуются с использованием тега шифрования ссылок [lееch=...] ... [/lееch]. Ранее передача реферала блокировалась всегда для таких ссылок, теперь в зависимости от настроек скрипта в админпанели.

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

Для публикаций, которые разбиты на несколько страниц, добавлено корректное формирование ссылок для микроразметки Schema.org. Теперь также каждая страница будет вести именно на ту страницу, которой она соответствует.

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

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

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

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

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

В связи с необходимости поддержки новых функций и возможностей, а также оптимизации работы скрипта на сервере для более высокой производительности, линейка PHP 7.xx объявлена устаревшей и рекомендуется обновить серверное ПО до версии 8.1 и выше.

Исправлена проблема, связанная с некорректной валидностью текста при вставке видео и аудио контента с использованием стандартного плеера DLE в текст публикации.

Исправлена проблема, при которой могли не работать некоторые функции сайта если разные группы имеют разные настройки для использования каптчи Google Recaptcha v.3

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

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

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

Исправлена проблема, при которой могли возникать ошибки при обновлении с очень старых версий DataLife Engine.

Исправлена проблема, при которой отсутствовали дополнительные поля с типом "Дата и Время" при быстром редактировании публикаций на сайте

 

Список изменений относительно версии 15.1:

 

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

Полностью переосмыслен формат создания карты сайта Sitemap для поисковых систем Google и Yandex. Теперь для разных разделов сайта будет создан отдельный файл с картой, которые в свою очередь будут объединены в единый индексный файл. Например, карта статических страниц будет находится в одном отдельном файле, ссылки на категории в другом и т.д. При этом для поисковых систем вы указываете ссылку, как и ранее только одну на ваш сайт, например, http://вашсайт.ru/sitemap.xml и в ней уже будут автоматически объединены все созданные карты вашего сайта.

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

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

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

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

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

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

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

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

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

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

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

Добавлена поддержка структурированных данных schema.org для статических страниц на сайте.

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

Добавлена возможность указывать в настройках скрипта, производить или нет транслитерацию символов при формировании URL публикаций, категорий, и статических страниц. Например, при включении данной опции в настройках скрипта, при формировании URL публикации, она будет иметь вид: http://yoursite.com/id-imja-novosti.html, а при отключении будет иметь вид: http://yoursite.com/id-имя-новости.html, также по аналогии и при формировании категорий и статических страниц. Данное нововведение будет особенно полезно для SEO оптимизации сайтов на национальных языках, отличных от английского.

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

Добавлена возможность вставки постов из Телеграмм каналов в ваши публикации на сайте с использованием тега [mediа=....]. В данном теге указывается просто скопированная ссылка из браузера, а далее весь необходимый код DataLife Engine сформирует автоматически. Например, для вставки поста вы можете использовать: [media=https://t.me/vamtlgrm/185]

Добавлена поддержка сервиса капчи hCaptcha (hcaptcha.com) для проверки является ли посетитель ботом или нет. Включается данный сервис в настройках скрипта в админпанели, также как и Recaptcha и действует на все разделы, где включена и требуется проверка.

Добавлена поддержка нового глобального тега {page-count} который выводит номер страницы, на котором находится пользователь. Данный тег является глобальным, и может использоваться в любых tpl файлах шаблона. Данный тег будет особенно полезен в использовании различных рекламных кодах, например от яндекса, где можно указать дополнительным параметров номер страницы, где находится посетитель сайта, для более корректного рекламного показа на сайте.

Добавлена поддержка отложенной загрузки изображений при выводе контента публикаций из дополнительных полей непосредственно в главном шаблоне main.tpl

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

Добавлена поддержка уведомления об изменениях в карте сайта для поисковой системы Яндекс.

Внесены изменения в уведомления поисковых систем о обновлении карты сайта. Ссылки на уведомления поисковых систем были обновлены на актуальные.

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

Показ публикаций по облаку тегов стал полностью регистронезависимым, например поиск по "Новости" и "новости" будет одинаковым независимо от регистра в URL. При этом во избежание дублей в поисковых системах, DataLife Engine формирует ссылки с использованием букв только нижнего регистра, а при использовании другого регистра контроль неверных ЧПУ будет производить 301 редирект на корректный единый адрес.

Показ публикаций при использовании дополнительных полей с типом "перекрёстные ссылки" также стал полностью регистронезависимым, например поиск по "Новости" и "новости" будет одинаковым независимо от регистра в URL. При этом во избежание дублей в поисковых системах, DataLife Engine формирует ссылки с использованием букв только нижнего регистра, а при использовании другого регистра контроль неверных ЧПУ будет производить 301 редирект на корректный единый адрес.

Для шаблонов вывода кратких и полных новостей (shortstory.tpl и fullstory.tpl) добавлена поддержка новых тегов для вывода данных из дополнительных полей с типом галерея изображений: [xfgiven_X image="NR"] текст [/xfgiven_X image="NR"], где X это имя дополнительного поля, а NR это номер изображения, которые выводят текст заключённый в них если изображение с указанным номером присутствует и загружено в дополнительном поле. А также добавлена поддержка противоположных тегов: [xfnotgiven_X image="NR"] Текст [/xfnotgiven_X image="NR"], которые выводят текст заключённый в них если изображение с указанным номером отсутствует в дополнительном поле. Тем самым вы можете очень гибко организовывать формат и оформление загруженных галерей для публикаций.

В настройки скрипта в админпанели добавлена возможность указать значение Score при использовании reCAPTCHA v.3. Данное значение используется для проверки вероятности с которой пользователь может являться роботом, при использовании сервиса reCAPTCHA v.3. Данное поле может принимать значение от 0 до 1, где например, 0.1 означает что это скорее всего робот, а 0.9 скорее всего человек. Так на разных сайтах степень вероятности может отличаться, вы можете назначить вероятность на основе статистики Recaptcha непосредственно для вашего сайта. Рекомендуемое значение по умолчанию: 0.5.

Переработана и улучшена проверка с использованием Recaptcha v.3 является ли посетитель ботом или нет. Уменьшено количество ложных блокировок, особенно если человек долго пишет текст или долго заполняет формы.

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

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

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

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

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

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

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

При формировании файла для RSS экспорта, добавлено корректное удаление неподдерживаемого контента, в случаях, когда это необходимо. Например, описания картинок используемых в <figcaption> при экспорте в Яндкекс Новости.

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

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

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

Обновлена до актуальной версии библиотека Jquery UI, при использовании на сайте Jquery 3.xx. Был исправлен ряд ошибок в работе данной библиотеке.

Обновлена типографская обработка текста. Был исправлен ряд ошибок и улучшена расстановка кавычек для текста.

Графический драйвер для обработки изображений был обновлён до актуальной версии, в котором была улучшена поддержка PHP 8.1 и выше.

Визуальный редактор TinyMCE был обновлён до актуальной версии.

Видеоплеер DLE был обновлён до актуальной версии

Исправлена проблема, при которой при выборе любого S3 совместимого хранилища не отображались настройки: "Путь к файлам на внешнем сервере" и "HTTP адрес для внешнего хранилища".

Исправлена проблема, при которой в некоторых случаях могла происходить некорректная обработка содержимого тега [media=...].

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

Исправлена проблема, при которой могла не работать вставка данных из некоторых сервисов с использованием тега [media=...].

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

Исправлена проблема, при которой при использовании редактора TinyMCE вставлялись дополнительные теги <р></р> в конец контента в случае если при редактировании исходного кода, курсор ставился в самый конец текста.

 

Список изменений относительно версии 15.0:

 

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

Добавлена автоматическая разметка структурированных данных Schema.org для публикаций на сайте. В настройках скрипта в админпанели вы можете задать тип ваших публикаций, и добавить ряд опций для вашего сайта, после чего для страниц просмотра полных новостей, DataLife Engine будет автоматически формировать микроразметку Schema.org в формате JSON-LD. Что улучшает индексацию вашего сайта и взаимодействие сайта с другими ресурсами.

 Микроразметка Schema.org для "Хлебных крошек (BreadСrumb)" была переведена на формат вывода JSON-LD и объединена в единое целое совместно с другой общей микроразметкой.

Микроразметка Schema.org для "Хлебных крошек (BreadСrumb)" также была улучшена и дополнена. Теперь в неё входит полное дерево страниц, включая также и текущую страницу где находится пользователь, например, навигация по страницам и ссылка на полную новость и так далее.

Микроразметка Schema.org для рейтинга с типом "оценка" также была переведена на формат вывода JSON-LD, и публикуется совместно с другими структурированными данными. При этом она применяется не ко всем типам публикаций, а только к тем, для которых она допустима. Тем самым поисковые системы не будут выводит уведомления о недопустимости применения к структуре данных для данного типа публикаций.

Для навигации "Хлебные крошки (BreadСrumb)", при просмотре публикаций по ключевым словам, добавлено использование также ссылок непосредственно для просматриваемых ключевых слов, в случае перехода пользователем на следующие страницы. Тем самым он может вернуться в начало на непосредственно просматриваемое слово в самое начало, кликнув на слово в ссылке навигации.

Переработано и улучшено автоматическое формирование метатегов страниц сайта. Добавлено автоматическое формирование метатегов: twitter:card, twitter:title, twitter:url, twitter:description для более улучшенной интеграции сайта с Твиттером, а также добавлен вывод метатегов для Open Graph и Твиттера на все страницы сайта, а не только при выводе полных новостей.

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

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

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

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

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

Добавлена возможность загружать публичные файлы с использованием DataLife Engine на сервер или внешнее хранилище. Разница между публичными и другими файлами, загружаемыми через DLE, состоит в том что публичные файлы загружаются в отдельную папку public_files и доступ к ним и ссылки на скачивания даются прямыми обычными ссылками, без использования тегов [attachment=....] и пользователь скачивает их напрямую с сервера с использованием браузера минуя DLE и другие скрипты. Кому разрешено загружать на сервер публичные файлы, а кому запрещено вы можете гибко настроить в настройках групп пользователей. Также пользователю при загрузке файлов доступен выбор, загрузить файл как публичный, либо загрузить файл как обычный, скачивание которого будет доступно только через DLE.

Для дополнительных полей, имеющих тип "Изображение" или "Галерея изображений", добавлена новая опция: "Использовать изображение в разметке Open Graph". Тем самым вы можете напрямую указать из какого поля брать ссылку на изображение при формировании метатегов. Если явное указание отсутствует, то как и ранее изображение будет получено автоматически из всех полей. Если данную опцию имеют несколько полей, то изображение будет взято из первого, которое присутствует в новости и заполнено.

Для дополнительных полей, имеющих тип "Загружаемый файл", добавлена новая опция, позволяющая установить, является ли загружаемый файл публичным или нет. Если файл публичный, то будет использоваться прямая ссылка URL на скачивание файла, а сам файл будет загружен в соответствующую папку. Если файл не публичный, то будет использоваться как обычно тег [attachment=...]

Для общей папки загруженных изображений добавлена возможность использования уменьшенных и средних копий изображений. Для этого в папке, где находится оригинальное изображение, вы можете создать подпапки "thumbs" и/или "medium" и разместить там нужные уменьшенные копии с аналогичным названием файлов изображений.

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

 Добавлена поддержка загрузки изображений в формате AVIF. Для работы с данным форматом понадобится PHP версии не ниже 8.1 с библиотекой GD2 актуальной версии, либо Imagick собранный также с поддержкой формата AVIF.

Добавлена поддержка загрузки изображений в формате HEIF. Для работы с данным форматом понадобится PHP версии не ниже 8.1 с библиотекой GD2 актуальной версии, либо Imagick собранный также с поддержкой формата HEIF.

Добавлена поддержка выбора и загрузки изображений с расширением BMP для дополнительных полей с типом изображение и галерея изображений, а также при переносе таких изображений непосредственно в редактор методом Drag And Drop.

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

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

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

Для шаблонов вывода публикаций (shortstory.tpl и fullstory.tpl) для дополнительных полей имеющих тип "Изображение", добавлена поддержка нового тега [xfvalue_image_description_X] который выводит только описание для загруженного изображения, где "х" это имя дополнительного поля. Тем самым вы можете совместно с другими тегами, сделать полностью своё оформление загруженного изображения.

Для шаблонов вывода публикаций (shortstory.tpl и fullstory.tpl) для дополнительных полей имеющих тип "Галерея изображений", добавлена поддержка новых тегов: [xfvalue_X image-url="Nr"] который выводит только URL выбранного изображения из галереи изображений, [xfvalue_X image-thumb-url="Nr"] который выводит только URL уменьшенной копии выбранного изображения из галереи изображений, [xfvalue_X image-description="Nr"] который выводит только описание выбранного изображения из галереи изображений. Где "X" это имя дополнительного поля, а "Nr" это номер изображения из галереи. Например, при использовании [xfvalue_test image-description="2"] будет выведено описание изображения номер два, загруженного в дополнительное поле с именем "test". Тем самым вы можете сделать полностью своё собственное оформление галереи изображений на своём сайте.

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

Добавлена поддержка в публикациях новых HTML тегов: "svg", "path", "symbol", "use". Тем самым вы можете вставлять векторные изображения в публикации, например иконки и прочее.

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

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

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

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

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

Для шаблона профиля пользователя (userinfo.tpl) добавлена поддержка следующих тегов: [attached-vk] текст [/attached-vk], [attached-odnoklassniki] текст [/attached-odnoklassniki], [attached-facebook] текст [/attached-facebook], [attached-google] текст [/attached-google], [attached-mailru] текст [/attached-mailru], [attached-yandex] текст [/attached-yandex] которые выводят текст заключенный в них в случае если аккаунт пользователя привязан к указанным социальным сетям. Данные теги полезны для оформления собственных блоков в шаблоне, для отвязки аккаунтов привязанных социальных сетей.

Для шаблона профиля пользователя (userinfo.tpl) добавлена поддержка следующих тегов: [detach-vk] текст [/detach-vk], [detach-odnoklassniki] текст [/detach-odnoklassniki], [detach-facebook] текст [/detach-facebook], [detach-google] текст [/detach-google], [detach-mailru] текст [/detach-mailru], [detach-yandex] текст [/detach-yandex] которые выводят текст заключённый в них в виде ссылки на отвязку аккаунта от указанной социальной сети, случае если аккаунт пользователя привязан к ней. Данные теги полезны для оформления собственных ссылок в шаблоне, для отвязки аккаунтов привязанных социальных сетей.

Добавлена поддержка вывода RSS публикаций по главному потоку сайта вашсайт.com/rss.xml в случае если для главной вашего сайта не используется вывод публикаций, а включён вывод статической страницы с именем main в настройках скрипта.

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

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

Добавлен автоматический контроль валидности HTML кода, при использовании вставки видео, аудио и медиа контента с использованием BB тегов, таких как [vidеo=...], [аudio=...] и [mеdia=...]. В случае если данные теги находятся в тегах HTML тегах "p", то данный тег будет заменён автоматически на тег "div", в случае если контент, формируемый BB тегами, также содержит теги "div". Так как блочные теги "div" согласно HTML стандартам не могут находится в тегах "p". Тем самым публикуемый текст будет проходить валидность, а выставленное форматирование, корректно сохраняться.

Улучшена система наложения водяных знаков с типом "текст", при использовании библиотеки GD2 на старых версиях PHP. А также снижен расход памяти при использовании данного типа водяного знака.

Улучшены алгоритмы типографской обработки текста и устранён ряд ошибок в ее работе.

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

Внутренняя JS функция ShowLoading, которая выводит информацию что происходит AJAX загрузка контента, получила полноценную работу как с использованием анимированных иконок, так и с использованием передачи текста сообщения. Данное нововведение будет в основном полезно для разработчиков плагинов, которые хотят передавать свой контент в данную функцию. А также вы можете указывать расположение данного всплывающего окна, для этого добавлены два дополнительных параметра для нее, указывающих смещение по оси X и по оси Y. Для смешения по оси X принимает значения "left", "right" и "center", а смещение по оси Y может принимать значения "top", "bottom", "center". Например вызов функции ShowLoading("Загрузка контента", "right", 'top'); выведет уведомление наверху справа. Новые параметры являются дополнительными и необязательными, по умолчанию уведомление выводится по центру.

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

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

Обновлён визуальный редактор TinyMCE до актуальной версии.

Обновлён до актуальной версии парсер входящего текста DLE (HTML Purifier).

Добавлена поддержка новой линейки PHP 8.1.x

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

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

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

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

Исправлена проблема, при которой нельзя было повторно авторизоваться в админпанели если был включён таймаут неактивности в админпанели и одновременно включена авторизация по e-mail а не по логину.

Исправлена проблема, при которой тег {%unsubscribe%} в e-mail сообщениях с сайта выводил некорректную ссылку на профиль пользователя в случае, если на сайте была отключена поддержка ЧПУ.

Исправлена проблема, при которой могло не работать на некоторых серверах кеширование с использованием библиотеки PHP Memcache.

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

Исправлена проблема, при которой неверно формировались значения шаблонного тега {category-url} в случае если был отключен ЧПУ в настройках скрипта и новость при этом была опубликована в нескольких категориях.

 

Список изменений относительно версии 14.3:

 

Добавлена полностью новая система управления загружаемыми на сервер файлами и изображениями. В результате чего была добавлена поддержка внешних хранилищ для загружаемых на сайт изображений и файлов. В настройках скрипта в админпанели вы можете указать, где будут сохраняться загружаемые файлы. Вы можете сохранять файлы локально, в пределах своего сервера, либо выбрать внешний FTP или SFTP сервер. А также для выбора доступны облачные сервисы, такие как Amazon S3 и Яндекс Облако. Новая система хранения и управления загружаемыми файлами построена на унифированной файловой системе Flysystem 2.0, благодаря чему вы сможете через систему плагинов, очень легко добавить поддержку своего какого либо иного внешнего хранилища, без необходимости правки множества файлов DataLife Engine. Добавив новых адаптер, DataLife Engine сможет автоматически использовать его везде для своей работы.

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

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

Общая папка, которая использовалась в менеджере загрузок изображений к публикациям, была перемещена в отдельную папку "shared", располагающуюся в /uploads/ тем самым общие картинки теперь располагаются в отдельной папке. Также дополнительно в этой общей папке вы можете создавать свои собственные подпапки любой вложенности, и непосредственно в менеджере загрузок, переходить в эти папки и вставлять изображения в публикации. Тем самым вы можете удобно создать и расположить свою библиотеку общих изображений.

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

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

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

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

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

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

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

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

Добавлена поддержка библиотеки PHP Imagick для обработки загружаемых изображений на сервер. Вы можете в настройках скрипта в админпанели выбрать, что вы хотите использовать Imagick или GD2, либо предоставить DataLife Engine автоматически выбирать. Отличий между GD2 и Imagick немного, однако Imagick позволяет производить некоторые операции над картинками быстрее и создавать более качественные уменьшенные копии, а также потребляет меньше памяти при обработке больших изображений.

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

Добавлена поддержка загрузки нового формата изображений "BMP". При этом изображения в данном формате будут автоматически сконвертированы в формат JPG для более снижения размера файла и более быстрой загрузки страниц сайта.

При загрузке изображений на сервер, добавлена автоматическая коррекция расширения изображения, в случае если расширение загружаемого файла не соответствует его формату. Например, если картинка по своей сути является PNG картинкой, а расширение файла имеет формат .jpg, то загружаемое изображение будет автоматически переименовано в файл с корректным расширением .png, и так далее для всех других форматов.

При загрузке изображений на сервер, и использовании сервиса TinyPNG для обработки картинок, существенно снижено количество обращений к сервису и использования его API. Тем самым при лимитированном количестве обрабатываемых изображений, вы можете больше обрабатывать картинок на сервисе.

Добавлена поддержка обработки изображений в формате WebP на сервисе  TinyPNG. Тем самым размер данных изображений также может быть сжат до минимальных размеров, без потери качества.

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

В настройки скрипта в админпанели, в опции "Область наложения водяного знака", добавлена дополнительно новая возможность указания размещения водяного знака по центру изображения.

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

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

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

Существенно снижен расход потребляемой оперативной памяти при обработке загруженных на сервер изображений.

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

Изменены алгоритмы загрузки изображений на сервер. Теперь для всех загружаемых изображений на сервер, больше не будет добавляться к имени изображений временной UNIX префикс, и все имена будут сохраняться в оригинальном виде, останется только транслитерация имён, если они написаны на кириллице. Однако в случае, если на сервере уже существует изображение с данным именем, то во избежание перезаписи другой картинки, для загружаемой будет добавлен временной префикс к ее имени. Тем самым DataLife Engine будет максимально сохранять оригинальные имена у загружаемых картинок, и только в случае появления дубликатов имён, автоматически добавит необходимый префикс.

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

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

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

Для шаблонов вывода кратких и полных новостей (shortstory.tpl и fullstory.tpl) добавлена поддержка новых тегов: [has-category] текст [/has-category] которые выводят текст, заключённых в них, если публикация находится в какой-либо категории. А также добавлена поддержка обратных тегов: [not-has-category] текст [/not-has-category] которые выводят текст, заключённых в них, если у публикации нет никаких категорий. Тем самым вы можете гибко настраивать оформление шаблонов для публикаций, у которых есть категории, и для публикаций, у которых нет категорий.

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

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

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

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

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

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

Внесены изменения в работу функции "Поделится интересными материалами". Теперь для того, чтобы указать текстом из какого блока на сайте пользователи могут делится, вам необходимо указать для данного блока класс с именем "share-content", а если внутри этого блока необходимо что-либо исключить, то используйте класс "ignore-select". Тем самым вы можете назначить свой любой блок на сайте, где находится контент, с которым пользователи могут делится при выделении текста. Вы можете также назначать несколько блоков, где разрешено делится контентом сайта. В случае если вы используете данную возможность при просмотре кратких публикаций, то для качественного контроля смещения публикаций по мере добавления новых, мы рекомендуем использовать для блоков уникальный ID на основе ID новости, например добавив в шаблон id="news-{news-id}".

Из настроек скрипта убрана настройка включения и отключения функции "Разрешить пользователям делится интересными материалами". Теперь данная опция включается и отключается автоматически если в шаблоне блоку задан класс CSS "share-content".

Внесены изменения в работу главной страницы на сайте в случае, если для показа контента на этой странице назначена либо статическая страница, либо публикации с использованием тега {custom ...}. Ранее главной страницей сайта для этих настроек была только страница в URL браузера которой полностью отсутствуют какие-либо параметры. Теперь же параметры, которые не относятся к DLE, будут игнорироваться, а назначенный контент будет отображаться корректно, даже при присутствии посторонних параметрах в URL. Тем самым при переходе на ваш сайт по различным рекламным компаниям, или с дополнительными маркерами от рекламных компаний, контент вашего сайта будет отображаться корректно и 404 ошибка выдаваться не будет. Например, при переходе с Яндекс Директ и прочих сервисов. А во избежание появления дублей страниц, в поисковых системах задействована система канонических ссылок в коде страниц вашего сайта.

Вывод публикаций с использованием тега {content}, а также работа скрипта была переработана таким образом, что больше не выводится и не используется внешняя обёртка контента дополнительным тегом <div id="dle-content"> ... </div>. Это упрощает интеграцию шаблонов с некоторыми HTML Фреймворками. Если вы использовали привязку вёрстки к данному тегу, то вам необходимо внести изменения в вёрстку CSS вашего шаблона.

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

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

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

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

Внесены изменения в работу настройки "Минимальные размеры изображения для загрузки". Теперь данная настройка распространяется только на изображения, загружаемые к публикациям на сайте. И не распространяется на загружаемые аватары на сайте и на модуль управления изображениями в админпанели, как было ранее.

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

Обновлён до актуальной версии визуальный редактор TinyMCE. Были улучшены и добавлены новые инструменты для работы с таблицами, а также исправлен ряд ошибок в нем. Была добавлена поддержка контекстного меню браузера.

Обновлён до актуальной версии парсер входящих данных HTML Purifier в DataLife Engine. Добавлена поддержка некоторых новых HTML атрибутов для текстов.

Обновлена до актуальной версии библиотека PHPMailer в DataLife Engine для отправки писем с сайта.

Для поддержки всех новых функций минимальные требования к PHP подняты. Для корректной работы требуется PHP 7.2 и выше.

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

Исправлена проблема, при которой не выводилась отладочная информация функцией GzipOut при использовании PHP 8.xx

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

 

Список изменений относительно версии 14.2:

 

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

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

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

Добавлена украинская локализация скрипта Datalife Engine. Украинский язык теперь также включён в состав стандартного дистрибутива, и будет поддерживаться в дальнейшем при обновлении.

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

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

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

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

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

Для всех страниц сайта, которые осуществляют вывод кратких публикаций, добавлена поддержка отдачи HTTP заголовка "304 Not Modified", в случае отправки на сервер соответствующего запроса от поисковых систем. При этом учитываются даты добавления или редактирования всех публикаций, опубликованных на странице, как с использованием тега {content}, так и тегов {custom}. Что позволит снизить расход трафика на сервере, и существенно ускорить индексацию и переиндексацию сайта поисковыми системами.

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

Для пользовательского вывода публикаций с использованием тега {custom ...} добавлена поддержка нового параметра banners="yes", который включает или отключает вывод рекламных материалов, которые назначены для вывода между публикациями. Данный параметр может принимать два значения "yes" для включения вывода, и "no" для отключения вывода. По умолчанию если данный параметр отсутствует в теги, вывод рекламных материалов между публикациями будет отключён.

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

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

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

Модуль "Поделится интересными материалами" был полностью интегрирован в языковую систему DataLife Engine и для формирования информации использует языковые файлы скрипта. Тем самым при использовании других языков переключение будет автоматическим и не требует правки файлов. Также в данном модуле добавлена проверка контрольных сумм на предмет изменения контента, и в случае его изменения текст не будет выделятся если контрольная сумма не совпадает, чтобы не происходило выделение не того текста, с которым посетитель сайта делился.

Обновлена до актуальной версии система подсветки исходного кода, опубликованного в тегах [cоde] ... [/cоde] до актуальной версии. Помимо этого, она была существенно переработана для более лучшего и качественного автоматического распознавания языка опубликованного кода. А также была добавлена поддержка большого количества языков, и различных конфигураций. Теперь осуществляется качественная подсветка не только HTML или JS, но и других языков и кодов.

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

Для типографской обработки текста в редакторах добавлена возможность исключения обработки публикуемого контента в BB тегах исходного кода [cоde] ... [/cоde], а также в соответствующих HTML тегах, которые используются для публикации исходного кода.

Визуальный редактор TinyMCE был обновлен до актуальной линейки 5.7.x, а также он был существенно переработан для более комфортной работы. Данный редактор был назначен по умолчанию при установке DataLife Engine на сервер.

Для визуального редактора TinyMCE добавлена возможность загружать изображения на сервер посредством простого переноса файлов картинок методом "Drag and Drop" в редактор, а также загрузка изображений на сервер из буфера обмена браузера.

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

Для визуального редактора TinyMCE добавлена возможность редактирования загруженных или вставленных изображений. Функции редактирования содержат такие возможности, как изменение размеров, изменение ориентации, зеркалирование, изменение яркости и контрастности и т.д. Изменённое изображение в редакторе, будет автоматически загружено на сервер.

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

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

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

Для шаблонов вывода статических страниц (static.tpl) добавлена поддержка новых тегов: {full-link} который выводит URL для данной статической страницы, а также {print-link} который выводит URL версии для печати для данной страницы. Данные теги будут полезны, когда необходимо собственное оформление для ссылок на странице, или их особенного вывода, например, для вывода QR кода для мобильных устройств и т.д.

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

Переработана и улучшена система AJAX добавления комментариев на сайте. В случае если в настройках скрипта включено объединение комментариев на сайте, и пользователь добавляет ещё комментарий в дополнение к своему, то на странице будет обновлён и дополнен именно текст его предыдущего комментария. А в случае, если объединение отключено, то его дополнительные комментарии будут добавляться последовательно друг за другом и будут все видны сразу без перезагрузки страницы.

Существенно переработана и улучшена система AJAX ответов на комментарии в случае, если включены древовидные комментарии. Изменения коснулись улучшения позиционирования добавляемых ответов, а также формирования DOM структуры элементов, которые больше не используют промежуточных слоёв и элементов, что позволяет лучше адаптироваться под вёрстку шаблона.

Для микроразметки рейтинга публикаций, добавлено использование дробного значения параметра itemprop="ratingValue", теперь в данном значении вместо целого значения, например, 4, будет использоваться более точное значение, например, 4.3. Это позволит поисковым системам при выдаче отображать более точную шкалу рейтинга в результатах выдачи.

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

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

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

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

Оптимизировано отображение некоторых элементов панели управления на мобильных устройствах. Устранены обнаруженные недостатки отображения некоторых элементов страниц панели управления.

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

Улучшено формирование метатега og:description протокола Open Graph при просмотре полных новостей. Теперь при формировании данного тега в случае, если в тексте присутствует текстовые ссылки, без формирования кода, то они также удаляются и не используются. Например, если в тексте ссылка https://site.ru, то она удаляется. Данное нововведение позволяет не участвовать в формировании описания ссылки, которые просто публикуются в текстовых дополнительных и других полях. Что делает описание более корректным и правильным.

Улучшена система отправки E-Mail писем с сайта, а также предотвращено возможное аварийное завершение рассылки писем, если почтовый адрес какого-либо получателя письма является некорректным.

Улучшена система автоматического обновления DataLife Engine. В случае если произошло аварийное завершение автоматического обновления, по причине неожиданной ошибки сервера, администратору будет отображена полная информация об ошибке который вернул сервер, а также отображён ответ, который пришёл с сервера, а не просто уведомление о том, что произошла ошибка. Данная информация поможет устранить администратору сайта причины возникновения проблемы.

Обновлена библиотека PHPMailer для отправки писем с сайта до актуальной версии.

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

Внесены изменения в систему работы шаблонных тегов [if ..] [/if], в случе если если используется сокращённый вывод какой-либо информации, то поиск по указанным параметрам в этих тегах, все равно будет осуществлён по полному значению. Например, при выводе на сайте сокращённой информации тегом {short-story limit="200"}, то при использовании [if short_story~"text"] ... [/if] поиск будет произведён по всему краткому описанию, а не только по первым 200 символам.

Прекращена поддержка PHP линейки 5.xx. Разработка и поддержка PHP 5 прекращена разработчиками PHP уже несколько лет назад. Мы не делали никаких необратимых и не поддерживаемых изменений в коде, которые бы не работали на линейке PHP 5, тем не менее данная линейка является больше не поддерживаемой. Тестирование DLE на ней не производится. Минимально требуемой версией PHP является 7.0 и выше.

Прекращена поддержка расширенного метода авторизации в панели управления DataLife Engine. Данный метод был введён в DLE версии 5.3 и по своей сути морально устарел. Он не добавлял уже в текущих условиях и реалиях никакой дополнительной защиты относительно обычного метода защиты реализованной в DLE актуальных версий, и использовал для HTTP авторизации тот же основной пароль. Пользователи, которые все же хотят добавить дополнительную защиту для своей админпанели, могут использовать и дальше HTTP авторизацию, только для этого необходимо разместить отдельно свой файл .htpasswd и прописать к нему путь в .htaccess. И сделать тем самым авторизацию независимым от DLE и с дополнительным своим паролем.

Исправлена проблема, при которой не работала система автоподсказок и автозаполнение для дополнительных полей, имеющих тип "перекрёстные ссылки", для слов, которые содержат некоторые специальные символы, например символ амперсанда "&" и ряд других.

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

Исправлена проблема, при которой могло происходить некорректное отображение некоторых символов при цитировании комментариев, содержащих в себе теги вставки исходного кода, с использованием BBCODES редактора.

Исправлена проблема, при которой не работал корректно раздел "IP Утилиты" в админпанели, при использовании PHP линейки 8.xx

Исправлена проблема, при которой не работало отображение рекламных материалов с опцией "между публикациями", при использовании PHP линейки 8.xx

Исправлена проблема, при которой некорректно работали некоторые теги в шаблоне вывода комментариев (comments.tpl)

Исправлена проблема, при которой не задействовался и не использовался кеш для RSS потоков с сайта.

Исправлена проблема, при которой не работала выборка категорий при использовании DLE API в сторонних модулях на MySQL 8.xx

Исправлена проблема, при которой происходило дублирование дополнительных полей, имеющих тип "перекрёстные ссылки", при массовом снятии с модерации публикаций, которые уже не находились на модерации, а были ранее опубликованы.

Исправлена проблема, при которой не работал вывод дополнительных полей публикаций при одновременном включении 3 типа ЧПУ и вывода полной информации из профиля пользователя.

Исправлена проблема, при которой в разделе редактирования комментариев в админпанели, происходил сброс искомого ключевого слова, при навигации по страницам.

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

 

Список изменений относительно версии 14.1:

 

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

Для шаблонов вывода комментариев (comments.tpl) добавлена поддержка новых тегов условий сравнения значений. Например, тег [if field = "значение"] текст [/if] выведет текст заключённых в них если значения поля равно указанному значению.

Добавлена поддержка нового типа кеширования с использованием системы кеширования Redis. В настройках скрипта вы можете выбрать какое именно кеширование использовать: Файлы, Memcache или Redis. Также если ваш Redis сервер требует логина и пароля для авторизации или просто пароля, то вы можете также задать данные авторизации на сервере для этого. Для работы данного типа кеширования, на вашем сервере должен быть установлен сервер Redis, а также расширение для PHP интерпретатора php-redis.

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

Для тегов условий сравнения значений [if field = "значение"] текст [/if] добавлена поддержка использования в них других шаблонных тегов. Например, вы можете использовать конструкцию: [if autor = "{profile-login}"]Просматривает автор публикации[/if], которая выведет указанный текст, если публикацию просматривает ее автор. Тем самым вы можете более гибко делать оформление шаблонов.

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

Для тега [mеdia=...] добавлена поддержка более 200 новых сервисов и сайтов. По сути, была добавлена поддержка всех известных сайтов и сервисов поддерживающих протокол oEmbed для обмена данными для вставки в публикации.

Для шаблона main.tpl добавлена поддержка нового тега {cloudstag} который выводит ключевое слово из облако тегов, при просмотре раздела сайта, который показывает публикации по определённому ключевому слову из облака тегов. Данное нововведение будет полезно для вебмастеров, которые хотят выводить просматриваемое ключевое слово в каком-либо отдельном месте, например с использованием HTML тегов h1 и т.д.

Для шаблона вывода меню категорий (categorymenu.tpl) добавлена возможность вывода описания категории в меню. Для этого добавлена поддержка новых тегов: {description} - который выводит описание категории, [description] текст [/description] - которые выводят текст заключённый в них если задано описание категории, а также обратные теги: [not-description] текст [/not-description] - которые выводят текст заключённый в них если не было задано описание категории.

Для шаблона вывода меню категорий (categorymenu.tpl) добавлена поддержка новых тегов: [not-parent] текст [/not-parent] которые выводят текст, заключённый в них, если категория не является родительской и не содержит в себе подкатегории. По своей сути данный тег является обратным уже существующему тегу: [isparent] текст [/isparent].

Для шаблона вывода меню категорий (categorymenu.tpl) добавлена поддержка новых тегов: [is-children] текст [/is-children] которые выводят текст, заключённый в них, если категория является подкатегорией другой категории, а также добавлена поддержка обратных тегов: [not-children] текст [/not-children] которые выводят текст заключённый в них, если категория не является подкатегорией другой категории.

Для дополнительного поля с типом: "Переключатель 'Да' или 'Нет'", изменено его заполнение на сайте, вместо HTML тега select добавлено использование тега input (checkbox). Тем самым заполнение поля на сайте приведено в соответствие с заполнением его в админпанели.

Для дополнительных полей, имеющих свойство "использовать как перекрёстные ссылки" добавлена возможность использовать в их значениях символа слеша "/".

Для тега пользовательского вывода комментариев {customcomments ....} добавлен новый параметр newsid="1,3,5-15" где вы можете перечислить ID публикаций из которых нужно выбирать комментарии. Также данный параметр может включать в себя шаблонные теги других шаблонов, например, если в шаблоне полной новости разместить тег {customcomments newsid="{news-id}" order="rating"} он покажет комментарии из данной публикации, отсортированные по рейтингу.

Для тега пользовательского вывода комментариев {customcomments ....} добавлен новый параметр newsidexclude="1,3,5-15" где вы можете перечислить ID публикаций которые нужно исключить при показе комментариев. Например, при использовании тега {customcomments newsidexclude="3-10"} будут показаны комментарии из всех публикаций, кроме публикаций ID которых от 3 до 10.

Для тега пользовательского вывода новостей {custom ....} добавлен новый параметр subcat="yes". Данный параметр может использоваться совместно с параметрами category="список" или categoryexclude="список". Данный параметр указывает необходимо ли включать в выборку также публикации, находящиеся в подкатегориях или нет. Данный параметр может принимать следующие значения: subcat="yes" который указывает, что также нужно выбрать все публикации находящиеся и в подкатегориях указанной категории, а также значение subcat="only" который указывает, что нужно выбрать публикации только из подкатегорий, без учета указанной категории. Например, у вас на сайте есть категории с ID 1, 2 и 3. Категории 2 и 3 при этом являются подкатегориями первой. При использовании тега {custom category="1" subcat="yes"} будут выбраны все новости, из категорий 1, 2 и 3. А при использовании тега {custom category="1" subcat="only"} будут выбраны все публикации только из категорий 2 и 3. Тем самым вы можете гибко указывать нужные параметры выборки, без перечисления всех категорий в теге, а также публикации будут автоматически показываться при добавлении в админпанели новых подкатегорий, без необходимости правки шаблонов.

Для ключевых слов из облака тегов добавлена возможность использовать в их значениях символа слеша "/".

В связи с тем, что сервис Instagram перешел под управление Facebook, а тот в свою очередь для встраивания своего контента на сайт требует обязательно иметь зарегистрированное на сервисе приложение для получения данных, то для вставки в новости постов из Instagram с использованием тега [mеdia=...] теперь в DLE используются данные приложения, указанного в настройках скрипта для авторизации через социальную сеть Facebook. При этом в настройках самого приложения на сайте Facebook вам необходимо дать доступ к получению контента через oEmbed. После чего вставка из Instagram и Facebook c использованием тега [mеdia=...] будет доступна. Подробнее о том как добавить данные права в свое приложение вы можете прочитать в документации https://developers.facebook.com/docs/plugins/oembed

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

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

При загрузке файлов с расширениями webm и m3u8 добавлено автоматическое распознавание их как видеофайлов и соответственно они могут быть вставлены в новость автоматически для их проигрывания на сайте с использованием видеоплеера.

Для публикаций добавлена поддержка отдачи заголовка "304 Not Modified", в случае отправки на сервер соответствующего запроса от поисковых систем. Если публикация не редактировалась за указанный период, то DLE будет отдавать просто короткий соответствующий HTTP с кодом 304. Что позволит снизить расход трафика на сервере, и несколько снизить нагрузку на сервер.

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

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

Библиотека jQuery обновлена до актуальной линейки 3.6.x при использовании, в случае если в настройках скрипта в админпанели включено использование jQuery 3 на сайте.

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

Добавлена возможность вставки виджетов из apple музыки для проигрывания музыки на сайте с использованием тегов iframe. А также для HTML тегов iframe добавлена возможность установки политики доступа с использованием атрибута allow.

Добавлена возможность использования символов одиночных кавычек ('), а также символов амперсанда (&) в фильтре слов. Тем самым вы можете использовать такие слова как Жанна д'Арк и другие аналогичные.

Добавлена поддержка настройки: "Разрешить индексацию поисковыми системами ссылок, опубликованных в комментариях" для используемых на сайте визуальных WYSIWYG редакторов. Ранее данная настройка действовала только при использовании в комментариях BBCODES редактора и ссылок, публикуемых только с использованием BB тегов.

Для заметок, публикуемых в плагинах, было добавлено корректное отображение исходного кода, публикуемого ББ тегами [cоde] ... [/cоde], а также была добавлена подсветка исходного кода и его тегов, для более улучшенного визуального восприятия текста.

В связи с изменением сервисом YouTube алгоритмов работы по протоколу Oembed, и по умолчанию он стал отдавать код видео маленьких размеров. В работу тега [mеdia=...] были внесены изменения, и теперь при вставке видео из данного сервиса используются настройки видео проигрывателя DLE, а высоту DLE рассчитывает автоматически. Тем самым вставка видео осуществляется правильных размеров, и соответствующих другим видео на сайте, размещённых с использованием плеера DLE.

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

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

 Видеоплеер DLE был обновлён до актуальной версии. Был исправлен ряд ошибок в отображении плеера на разных устройствах и браузерах.

Парсер входящего HTML кода для публикаций был обновлён до актуальной версии. Была добавлена поддержка ряда новых параметров HTML атрибутов для поддержки HTML5.

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

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

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

Добавлена поддержка PHP линейки 8.xx

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

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

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

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

Улучшено формирование метатега og:image протокола Open Graph при просмотре полных новостей. Теперь при формировании данного тега в случае, если текст краткого и полного описания не имеет картинок, то данная картинка будет взята из дополнительного поля с типом изображение или галерея изображений.

Добавлен учет последней даты комментария, расположенного на странице полной новости, при отдаче HTTP заголовка Last-Modified для более корректной отдачи в браузер информации о том когда была изменена страница.

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

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

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

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

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

Исправлена проблема, при которой неверно обрабатывались теги вывода иконок категорий в шаблонах вывода краткой и полной новости, если категории были назначены другие файлы шаблонов, отличные от стандартных (shortstory.tpl и fullstory.tpl).

Исправлена проблема, при которой не работали теги [if ..] ... [/if] если значение поля содержало символы в верхнем регистре.

Исправлена проблема, при которой не работали теги [if ..] ... [/if] если значение поля поле содержало несколько различных значений, например новость в нескольких категориях, и при этом проверка проверялась по отрицательному значению с комбинированием условий. Например, происходило некорректное сравнение условия [if category != "1" AND category != "2"]не 1 и не 2[/if] если новость при этом была опубликована в несколько категорий, а не только в одной категории.

 Исправлена проблема, при которой теги [not-ios] ... [/not-ios] и [not-android] ... [/not-android] не работали в случае если в шаблоне отсутствовали их обратные теги.

Исправлена проблема, при которой некорректно сохранялись категории при импорте публикаций из RSS каналов на сайт.

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

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

 

Список изменений относительно версии 14.0:

 

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

Добавлена поддержка проигрывания видео с адаптивным битрейтом (HLS файлов с расширением .m3u8) для видеопроигрывателя DataLife Engine.

Для шаблонов вывода кратких и полных новостей (shortstory.tpl и fullstory.tpl) добавлена поддержка новых тегов условий сравнения значений. Например, тег [if field = "значение"] текст [/if] выведет текст заключённых в них если значения поля равно указанному значению. Данный тег может сравнивать не только равенство, но и также проводить сравнения больше или меньше, находить вхождения.

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

Добавлена возможность привязки к аккаунту на сайте любой доступной социальной сети к своему аккаунту. Пользователь сайта может привязать к своему аккаунту одну или сразу несколько сетей. И в дальнейшем их использовать для входа на сайт под своим аккаунтом. Для того чтобы привязать социальную сеть к своему аккаунту, пользователь должен быть авторизован на сайте, зайти в свой профиль и там осуществить привязку. При этом аккаунт в социальной сети может быть любым и не имеет никаких требований по совпадению, например e-mail адресов. Для привязки социальных сетей в шаблоне профиля пользователя используются те же теги для авторизации через социальные сети, какие используются в шаблоне login.tpl: {vk_url}, {odnoklassniki_url}, {facebook_url}, {google_url}, {mailru_url}, {yandex_url}

Добавлена возможность отвязать от аккаунта на сайте любую из социальных сетей. Даже если она изначально использовалась для первоначального входа на сайт и первой регистрации. Для этого в шаблоне вывода профиля пользователя добавлена поддержка тега {social-list} который выводит список привязанных социальных сетей и ссылки на их отключения от данного аккаунта.

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

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

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

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

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

Добавлена возможность загружать иконки для категорий непосредственно с использованием админпанели DataLife Engine. Осуществить загрузку иконок можно в разделе управления категориями, при добавлении или редактировании категории.

Для шаблонов вывода публикаций, а также для шаблона вывода меню категорий добавлена поддержка новых тегов: [category-icon] текст [/category-icon] выводят текст, заключенный в них, если для категории, где находится публикация, была задана иконка в настройках категории. А также добавлена поддержка противоположных тегов: [not-category-icon] текст [/not-category-icon] которые выводят текст если для категории, где находится публикация, не задана иконка. Тем самым вы можете более гибко создавать оформление ваших шаблонов в зависимости от того есть ли у категории иконка или нет.

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

Добавлена возможность использования в поиске по сайту символов @ и ~, которые являлись служебными при полнотекстовом поиске на таблицах, использующих InnoDB.

Добавлена поддержка сжатия данных по алгоритму Brotli для JS, CSS и HTML, которые формирует DataLife Engine. Данный метод является более эффективным и более быстрым чем обычное zip сжатие данных. Для использования данного алгоритма сжатия на сервере должны быть установлены соответствующие серверные расширения для PHP. Использование данного алгоритма происходит полностью автоматически если DLE определит поддержку этого алгоритма вашим сервером, в случае отсутствия поддержки то сжатие будет автоматически осуществляться доступными средствами, например, zip сжатием.

Добавлена поддержка сжатия данных по алгоритму Brotli для JS, CSS и HTML, которые формирует DataLife Engine. Данный метод является более эффективным и более быстрым чем обычное zip сжатие данных. Для использования данного алгоритма сжатия на сервере должны быть установлены соответствующие серверные расширения для PHP. Использование данного алгоритма происходит полностью автоматически если DLE определит поддержку этого алгоритма вашим сервером, в случае отсутствия поддержки то сжатие будет автоматически осуществляться доступными средствами, например, zip сжатием.

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

Добавлена возможность для разделителей вывода категорий и для модуля хлебных крошек, использовать HTML код, при их задании в настройках скрипта. Например, вы можете задать там "</span><span class="test">" для того чтобы сделать более гибкое и разнообразное оформление вашего шаблона.

Добавлена поддержка отложенной загрузки видеороликов Youtube опубликованных с использованием тега [media=...] а также любого иного контента, опубликованного при использовании HTML тега iframe. В случае включения отложенной загрузки изображений в настройках скрипта, данная отложенная загрузка будет также осуществляться и для вышеуказанного контента. Что также будет дополнительно ускорять загрузку страниц вашего сайта, т.к. необходимый контент будет загружаться в браузер только по мере прокрутки страницы пользователем.

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

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

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

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

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

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

Для публикуемых ссылок на сайте, добавлена поддержка протоколов viber://, tg://, skype://, market:// которые позволяют открывать ссылки на сайте в приложениях, установленных для телефона. Таких как Вайбер, Телеграмм, Скайп и Андроид Маркет

Для модуля создания резервной копии базы данных добавлена совместимость переноса базы данных с более высокой версии на более низкую. Например, сайт был изначально создан на MySQL 8.0 и переносится на другой сервер где установлен MySQL 5.7. Бекап базы в данном случае будет создан в совместимом с MySQL 5.7 формате.

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

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

Видеоплеер DLE обновлён до актуальной версии. Был исправлен ряд небольших ошибок, и улучшено воспроизведение видео на мобильных устройствах.

Для модуля "Поиск и Замена" в админпанели добавлен также поиск и замена в заголовках новостей, если указан поиск по новостям и заголовкам статических страниц, если указан поиск и замена по статическим страницам.

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

Добавлено автоматическое удаление тегов вывода значений дополнительных полей из шаблона, в случае если данные этих дополнительных полей отсутствуют. Например, есть дополнительное поле с типом "галерея", и вы выводите ее значения не единым тегом вывода, а каждую картинку по отдельности при помощи тега [xfvalue_X image="Nr"], и в случае если какое либо изображение не было загруженных из указанных, то тег его вывода будет автоматически скрыт. Данное нововведение касается не только вывода изображений, а вообще вывода любых дополнительных полей и их значений.

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

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

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

Добавлен автоматический пересчёт статистики в панели управления в случае редактирования комментариев ожидающих модерации.

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

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

Улучшена система определения используемого протокола сайта http или https, предотвращающая некорректное чтение настроек сервера на определённых конфигурациях.

Улучшена система контроля неверных ссылок ЧПУ для некоторых разделов сайта и ссылок.

Обновлены визуальные редакторы TinyMCE и Froala до актуальных версий. Исправлен ряд выявленных ошибок в данных редакторах.

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

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

Исправлена проблема, при которой возникали JS ошибки в случае включения использования нативных смайлов Emoji и отключения редактора для комментариев.

Исправлена проблема, при которой возникали JS ошибки в случае включения использования нативных смайлов Emoji и отключения редактора для комментариев.

Исправлена проблема, при которой не убирались автоматически опции новости "Публиковать на главной", "Разрешить комментарии" и "Разрешить рейтинг" при добавлении или редактировании публикаций в админпанели, если одновременно несколько категорий имели запрет на использование данных опций у публикации.

Исправлена проблема, при которой дублировался заголовок List-Unsubscribe при массовой рассылке писем с сайта.

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

Исправлена проблема, при которой не работал расширенный поиск по комментариям, если был включён полнотекстовый поиск в настройках скрипта, а также включена модерация комментариев.

Исправлена проблема, при которой не работал расширенный поиск по комментариям, если был задан временной период за которые необходимо искать комментарии.

Исправлена проблема, при которой неверно формировался метатег description, если новость не добавлялась и не редактировалась в админпанели, при этом контент публикации слишком маленький.

 

 

Список изменений относительно версии 13.3:

 

Добавлен новый плеер для проигрывания видео на сайте. Новый плеер обладает улучшенной поддержкой актуальных браузеров и устройств и имеет более современный дизайн. Помимо визуальных улучшений новый плеер имеет и новые функциональные возможности, а именно поддерживает режим "Картинка в Картинке" для браузера, а для устройств Apple поддерживает проигрывание видео по AirPlay на другие устройства. Также в плеере реализовано несколько различных цветовых схем, которые вы можете выбрать в настройках плеера в админпанели.

Для автоматической системы обновления плагинов, добавлена передача версии DLE на сервер проверки наличия новых версий плагина, при помощи параметра 'version', который содержит в себе версию установленного скрипта DLE на данном сайте. Сервер разработчика плагина может проверить какая версия DLE используется и в зависимости от этого либо отдавать информацию о наличии новой версии или нет. А также может отдавать разные версии и копии плагина для разных версий DLE. Тем самым можно исключить, когда новая версия плагина будет отдаваться на сайт с более старой версией DLE, которую данный плагин не поддерживает. Информация о версии DLE может быть передана как POST запросом, так и GET, в зависимости от наличия тех или иных настроек на сайте где работает DLE, поэтому для разработчиков плагинов рекомендуется проверять версию через входящую глобальную переменную $_REQUEST['version'].

Добавлена возможность использования в редакторах для новостей и комментариев нативных Emoji смайлов. При включении данной настройки вместо картинок со смайлами будет выводится список поддерживаемых операционной системой пользователя Emoji смайлов. Визуальный вид смайлов также напрямую зависит от того на каком устройстве будет просматриваться контент. Общее количество смайлов поддерживаемых DataLife Engine более полутора тысяч. Для удобства Emoji смайлы сгруппированы по категориям, а также на самом верху списка отображаются 16 смайлов, которые пользователь использовал в последний раз. Тем самым наиболее используемые смайлы ему не придется постоянно искать в общем списке. Включается поддержка нативных Emoji в настройках скрипта в админпанели. В случае отключения данной настройки, используется обычная система смайлов, основанная на изображениях, как и ранее. Поддержка нативных Emoji добавлена во всех трех редакторах, имеющихся в DLE.

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

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

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

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

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

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

Добавлена возможность выводить навигацию по страницам для вывода кратких новостей и для пользовательского вывода новостей, отдельно от непосредственно самого блока новостей. Для этого в шаблон main.tpl добавлена поддержка следующих тегов: {navigation} выводит блок навигации по страницам, [navigation] текст [/navigation] выводит текст, заключённый в них если навигация по новостям имеется, [not-navigation] текст [/not-navigation] выводит текст, заключённый в них если навигация отсутствует. Все данные теги являются дополнительными и необязательными и в случае их отсутствия навигация будет выводится, как и ранее в блоке непосредственно новостей, согласно настройкам скрипта. Тем самым вы можете более гибко создавать нужное вам оформление сайта в шаблонах.

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

Добавлена возможность вывода последних просмотренных пользователем публикаций. Для этого используется тег пользовательского вывода новостей с параметром order="lastviewed", например, {custom order="lastviewed"}. При этом сортировка осуществляется по принципу последний просмотренный, показывается первым. Для осуществления обратной сортировки используется параметр sort="asc". Например, {custom order="lastviewed" sort="desc"} сортировка будет от последнего просмотренного к более раннему, а при {custom order="lastviewed" sort="asc"} сортировка будет от более раннего просмотренного к более позднему. Данная функция будет особенно полезна для сайтов публикующих, например, каталоги, и для показа блоков в которых посетитель может быстро перейти на ранее просмотренные публикации. Включается и отключается учет просмотренных новостей в настройках скрипта в админпанели. DataLife Engine запоминает 20 последних просмотренных публикаций.

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

Для шаблона поиска (search.tpl) добавлена возможность верстать таблицу с параметрами поиска по своему усмотрению. Для этого помимо общего {searchtable} который выводит все параметры для задания поиска целиком, было дополнительно добавлено 15 новых тегов, каждый из которых выводит только одно поле ввода или выбора без привязки к визуальному оформлению. Тем самым вы можете создать свое нужное вам оформление поиска, встроить его в оформление любого HTML фреймворка, убрать ненужные вам поля и опции и так далее.

В настройки скрипта добавлена возможность включения и отключения использования Яндекс Дзен при экспорте RSS потока. В случае отключения данной возможности, данная опция не будет отображаться при добавлении и редактировании публикаций.

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

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

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

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

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

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

Для пользовательского вывода публикаций на сайте при помощи тега {custom ...} добавлена поддержка нового параметра sortbyuser="yes" который разрешает возможность использования пользовательской сортировки [sort]{sort}[/sort] для данного блока публикаций. В случае если включен данный параметр, то посетители сайта могут сами выставлять удобную им сортировку новостей для даннного блока по своему желанию, аналогично как они это могут делать для тега {content}.

Добавлена возможность автоматического импорта аватаров пользователей при их авторизации на сайте с помощью сервисов Google и Яндекса.

В связи с появлением нового API 2.0 для авторизации на сайте с использованием mail.ru, и возможным скорым отключением поддержки старого API на данном сервисе, добавлена поддержка нового API 2.0 https://o2.mail.ru. Внимание новое API требует создание нового приложения на сервисе. Поэтому если на вашем сайте уже присутствует авторизация через mail.ru, то вам необходимо создать новое приложение https://help.mail.ru/developers/oauth/app после чего задать данные этого приложения в настройках DataLife Engine в админпанели.

Добавлено формирование метатега og:description протокола Open Graph при просмотре статических страниц на сайте.

Для шаблонов вывода кратких и полных новостей (shortstory.tpl и fullstory.tpl) добавлена поддержка новых тегов [not-image-x] текст [/not-image-x] которые выводят текст, указанный в них только в случае если картинка с номером X отсутствует в новости. Данные теги будут полезны для вывода, например, каких-либо собственных заглушек, если отсутствует нужная картинка в тексте публикации.

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

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

Для рейтинга публикаций добавлено использование нового тега {ratingscore} в шаблонах вывода краткой и полной новости (shortstory.tpl и fullstory.tpl). Данный тег выводит число усредненного рейтинга от одного до пяти, с сохранением дробного значения. Например, в зависимости от выставленной оценки это может быть 1.6 или 4.2 и т.д. Данный тег позволяет задать, например, собственное оформление звезд рейтинга с частичным заполнением, а не только 2 или 4 заполненных звезды.

Для рейтинга комментариев также добавлено использование нового тега {ratingscore} в шаблоне вывода комментариев (comments.tpl). Данный тег выводит число усредненного рейтинга от одного до пяти, с сохранением дробного значения. Например, в зависимости от выставленной оценки это может быть 1.6 или 4.2 и т.д. Данный тег позволяет задать, например, собственное оформление звезд рейтинга с частичным заполнением, а не только 2 или 4 заполненных звезды.

При использовании массовой рассылки писем в админпанели, добавлено использование рекомендованного заголовка Precedence: bulk; в письмах. В целях избегания попадания вашей рассылки в спам.

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

Добавлена поддержка тегов {title limit="X"} и {short-story limit="X"} для шаблонов вывода RSS потока.

Адаптирован показ подсказок в админпанели, в зависимости от размеров экрана мониторов. Теперь расположение подсказок будет таким, чтобы они помещались на экран корректно, независимо от размеров экрана монитора и его разрешения.

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

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

Добавлена регистронезависимая проверка логинов и e-mail адресов, запрещенных для регистрации, написанных на кириллице и других языках, отличных от английского.

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

Проведена адаптация кода и добавлена поддержка PHP 7.4.xx

Обновлена библиотека HTML Purifier до актуальной версии.

Для функции GzipOut добавлена возможность передачи второго параметра, при использовании которого в отладочной информации будет выведена вся информация по MySQL запросам, а именно сколько времени заняло выполнение того или иного MySQL запроса, и какой запрос был осуществлен к базе данных. Например при использовании GzipOut(true) будет выведена общая отладочная информация по скрипту, а при использовании GzipOut(true, true) будет выведена также дополнительная информация по каждому MySQL запросу к БД. Данное нововведение будет полезно разработчикам модулей и оптимизаторам сайтов для выявления проблем и диагностики.

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

Исправлена проблема, при которой не работала динамическая загрузка комментариев с использованием Ajax при включении в настройках скрипта jQuery 3.xx

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

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

Исправлена проблема, при которой не работал переход в полноэкранный режим админпанели в браузере Chrome.

Исправлена проблема, при которой могло некорректно работать цитирование выделенного текста в публикациях при использовании визуального редактора Froala

Исправлена проблема, при которой некорректно работали теги [sort] ... [/sort] при просмотре полной новости.

Исправлена проблема, при которой некорректно мог обрабатываться тег {THEME} если он был опубликован в текстах новостей при перестроении публикаций в админпанели.

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

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

 

Список изменений относительно версии 13.2:

 

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

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

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

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

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

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

Добавлена возможность устанавливать для каждой публикации отдельно разрешено ли ее использование в Яндекс Турбо или нет. Для этого при добавлении или редактировании публикации в админпанели, для нее добавлена соответствующая опция. А также для поддержки этой опции в шаблон rss.tpl введены новые шаблонные теги: {allow-turbo} выводит текст "true" или "false" в зависимости от того включено ли использование турбо опции или нет, и теги [allow-turbo] текст [/allow-turbo] которые выводят текст, заключенный в них если Яндекс Турбо для публикации включен.

Добавлена возможность устанавливать для каждой публикации отдельно разрешено ли ее использование в Яндекс Дзен или нет. Включается и отключается данная опция при добавлении или редактировании публикации в админпанели. Для поддержки этой опции в шаблон rss.tpl введены новые шаблонные теги: [allow-dzen] текст [/allow-dzen] которые выводят текст, заключенный в них если Яндекс Дзен для публикации включен.

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

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

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

В настройки скрипта в админпанели добавлена возможность выбирать какую линейку jQuery использовать на сайте. Вы можете выбрать использование либо линейки 2.xx либо использование 3.xx. Тем самым вы можете либо использовать новейшие версии библиотек, либо использовать совместимые со своими JS плагинами библиотеки. При использовании линейки jQuery 3.xx подключается также использование новейшей версии библиотеки jQueryUI.

В настройки скрипта в админпанели добавлена возможность указывать, необходимо ли склонять дату публикации, при ее выводе при помощи пользовательского тега. При включении данной настройки, если дата публикации выводится при помощи тега {date=формат даты}, то название месяца будет склоняться на основе информации из языковых файлов. Например, публикация была добавлена в январе, то будет выводится '1 января', а при отключенной настройке '1 январь'.

Микроразметка хлебных крошек была полностью переведена на использование стандарта schema.org вместо устаревшего стандарта data-vocabulary.org

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

Для e-mail писем, отправляемых в админпанели в разделе "Рассылка сообщений", добавлено использование служебного заголовка List-Unsubscribe, что позволит пользователям быстро и удобно отписываться от рассылок непосредственно через интерфейс почтового сервиса. Данный заголовок не включается в письмо если оно отправляется на сервис mail.ru, причины этому вы можете прочитать по адресу https://habr.com/ru/post/280141/

Добавлены новые глобальные шаблонные теги: {category-icon} - выводит иконку просматриваемой пользователем категории, либо категории новости, если просматривается полная новость, а также добавлен тег {category-url} - который выводит URL просматриваемой категории. Глобальные шаблонные теги могут использоваться в любых файлах шаблонов, например, в main.tpl. Данные шаблонные теги будут полезны как для дополнительного оформления контента на страницах сайта, так и при формировании метатегов страницы.

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

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

Добавлена поддержка новых глобальных тегов: [ios] текст [/ios] которые выводят текст заключенных в них, в случае если устройство посетителя сайта использует операционную систему iOS от Apple, а также добавлена поддержка противоположных тегов: [not-ios] текст [/not-ios] которые выводят текст заключенных в них, в случае если устройство посетителя сайта не использует операционную систему iOS. Поддержка данных тегов позволяет не только определять тип устройства пользователя, но и его принадлежность, применяя нужное оформление сайта, например давать ссылку на скачивание подходящего приложения из магазина приложений Apple.

Добавлена поддержка новых глобальных тегов: [android] текст [/android] которые выводять текст заключенных в них, в случае если устройство посетителя сайта использует операционную систему Android от Google, а также добавлена поддержка противоположных тегов: [not-android] текст [/not-android] которые выводят текст заключенных в них, в случае если устройство посетителя сайта не использует операционную систему Android. Поддержка данных тегов позволяет не только определять тип устройства пользователя, но и его принадлежность, применяя нужное оформление сайта, например, давать ссылку на скачивание подходящего приложения из магазина приложений Google.

Добавлена поддержка загрузки и обработки изображений в формате WEBP для комментариев и аватаров для профилей пользователей, а также в разделе управления изображениями в админпанели.

Добавлена поддержка формата WEBP для тегов вывода изображений {image-x}. А также добавлена поддержка этого формата для использования метатегах OpenGraph для социальных сетей.

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

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

Добавлена поддержка отложенной загрузки изображений для статических страниц на сайте.

Добавлена поддержка вывода заголовков публикаций при выводе ссылок на предыдущую и следующую новости. Для этого в шаблон вывода полной новости добавлена поддержка следующих тегов: {prev-title} - который выводит заголовок предыдущей новости, {next-title} - который выводит заголовок следующей новости.

Для HTML тегов < vidео > и < аudio > добавлена поддержка всех HTML атрибутов согласно спецификации HTML5.

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

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

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

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

Для пользовательского вывода публикаций {custom xfields="..." ...}, улучшена обработка параметра поиска публикаций по дополнительным полям xfields="...", в данном параметре теперь можно использовать одинарные кавычки для поиска значений, а также ряд других специальных символов ранее недоступных для поиска.

Добавлена полная поддержка PHP линейки 7.3.x

Добавлена полная поддержка PHP линейки 7.3.x

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

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

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

Улучшено формирование метатега og:description протокола Open Graph при просмотре полных новостей. Формирование происходит более корректно с автоматическим удалением ряда служебных тегов, например, тегов рекламных баннеров и т.д.

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

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

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

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

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

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

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

Исправлена проблема, при которой неверно производился подсчёт страниц навигации в разделе управления облаком тегов.

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

Исправлена проблема, при которой некорректно работал выбор цветов в редакторе TinyMCE.

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

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

 

Список изменений относительно версии 13.1:

 

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

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

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

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

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

Для MySQL запросов, использующихся в плагинах, добавлено использование тега {engine}, который указывает, какой движок MySQL использует DLE при создании таблиц в базе данных. Может принимать значения InnoDB или MyISAM.

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

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

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

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

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

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

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

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

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

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

Добавлена поддержка протокола magnet: для ссылок публикуемых на сайте при помощи BB тегов и в визуальных редакторах.

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

Добавлена полная поддержка MySQL линейки 8.x.

Добавлена полная поддержка PHP линейки 7.3.x.

Для тега [ifxfvalue tagname="tagvalue"] Текст [/ifxfvalue] который выводит текст в случае если значение тега совпадает с указанным значением, добавлена поддержка перечисления нескольких значений через запятую. Например, тег [ifxfvalue gorod="Москва, Казань, Екатеринбург"] Текст [/ifxfvalue] выведет указанный текст, если дополнительное поле с именем gorod содержит в себе одно из указанных значений. Тем самым значительно упрощается верстка шаблона в различных сценариях.

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

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

Добавлена возможность поиска по новостям и статическим страницам на мобильных устройствах (смартфоны, планшеты) в панели управления скриптом.

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

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

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

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

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

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

Лимит на количество символов метатега Description для статических страниц увеличен до 300 символов. Максимальная длина соответствует теперь максимальной длине, установленной поисковой системой Google, для вывода данной информации в результатах поиска.

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

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

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

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

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

Для шаблона RSS потока, добавлена возможность использования HTML форматирования разбитого на несколько строк, использующегося для формирования турбо контента для яндекса.

Улучшена обработка изображений в формате PNG в случаях использования некоторых прозрачных изображений. А также улучшено наложение водяных знаков на данные картинки.

Добавлена поддержка работы тегов [newscount=X] текст [/newscount] и [not-newscount=X] текст [/not-newscount] для пользовательского вывода публикаций при помощи тега {custom ...}, в случаях если этот вывод используется в шаблонах вывода кратких публикаций.

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

Обновлены визуальные редакторы TinyMCE и Froala до актуальных версий. Исправлен ряд выявленных ошибок в данных редакторах.

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

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

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

Исправлена проблема, при которой не все шаблонные теги дополнительных полей публикаций, корректно обрабатывались в шаблоне main.tpl в случае если пользователь переходил на отсутствующую новость.

Исправлена проблема, при которой теги {news-id} некорректно обрабатывались при показе публикаций с использованием тега {custom ...}, в случае если при этом пользователем просматривалась полная новость.

Исправлена проблема с работой тегов [available ...] и [not-available ...], в случае просмотра пользователем страниц публикаций по символьному коду, если символьный код не указан, либо равен, например, нулю "0".

Исправлена проблема, при которой в некоторых случаях мог некорректно работать контроль неверных ЧПУ в полных новостях, в случае если DLE был установлен не в корне сайта, в подпапки.

Исправлена проблема, при которой могли выводится новости, при просмотре следующих и предыдущих публикаций, опубликованные на будущее время, несмотря на запрет на их вывод в настройках скрипта.

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

 

Список изменений относительно версии 13.0:

 

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

Добавлена возможность автоматического обновления плагинов на сайте. Для этого в плагине задается URL для получения информации о наличии новой версии. По данному URL сайт разработчика плагина должен отдавать массив в JSON формате, который должен содержать информацию о актуальной версии плагина, а также ссылку на загрузку актуальной версии плагина. Например, по данному URL должно возвращаться значение {"version":"2.0","url":"https://dle-news.ru/test/test.zip"}. После чего, при проверке обновлений, администратор сайта сможет узнать о наличии новых версий плагина и обновить плагины в админпанели в один клик.

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

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

Для системы управления плагинами, добавлена возможность использовать в именах папок, находящихся в ZIP архивах, тег {THEME}. При загрузке архива через систему плагинов, данный тег будет заменен на имя используемого шаблона. Например, разместив в архиве файл /templates/{THEME}/test.tpl, ваш файл шаблона будет помещен в используемый на сайте шаблон. Тем самым, при использовании сложных плагинов, которые содержат в себе примеры файлов шаблонов, они могут сразу загружаться в нужную папку, содержащую используемый пользователем шаблон.

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

Для дополнительных полей, имеющих тип "Изображение" и "Галерея изображений", добавлена возможность назначать каждому изображению в отдельности, свое персональное описание, которое также используется в качестве HTML атрибута alt, при выводе данных дополнительных полей на сайте.

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

Для публикаций и комментариев добавлен новый тип рейтинга "Нравится и Не нравится", который ведет отдельный учет как количества лайков, так и количества дизлайков. Для этого для шаблонов вывода публикаций и комментариев добавлены новые теги: {likes} - который выводит количество лайков, {dislikes} - который выводит количество дизлайков, а также тег [rating-type-4] текст [/rating-type-4] - который выводит текст, заключенный в теге, в случае если в настройках включен данный тип рейтинга.

В настройки профилей пользователей в админпанели, добавлена возможность устанавливать список категорий, в которые данному конкретному пользователю разрешено добавление публикаций. Это позволит, например, журналистам, вести личные рубрики, в которые другие журналисты (или часть из них) не имеют права публикации. Или наоборот — исключить журналиста из конкретной категории новостей, если он, например, в ней некомпетентен.

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

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

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

Для облака тегов добавлена возможность использования символов "&" и "#", что позволяет, например, использовать в облаке имена различных брендов, например, "H&M" и т.д.

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

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

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

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

Для шаблона вывода кратких новостей (shortstory.tpl) добавлено использование тегов [not-news] текст [/not-news], которые выводят заключенный текст в них, в случае если публикации по данным критериям отсутствуют. Тем самым вы можете переназначить стандартное системное сообщение об отсутствии публикаций в каком-либо отдельном разделе сайта, сделав его уникальным, например, для каждого раздела сайта. Также данные теги можно использовать и в шаблонах, которые используются при пользовательском выводе публикаций с помощью тега {custom ...}

Для шаблона E-Mail сообщения, которое отправляется при восстановлении забытого пароля, добавлено использование новых тегов: {%losturl%}, который выводит только URL ссылки на сброс и генерацию нового пароля, а также {%ipurl%}, который выводит только URL ссылки на сброс блокировки по IP. Тем самым вы можете отдельно задавать нужное вам оформление в письме данных ссылок, например, в виде кнопок. А также вы можете, например, отказаться от вывода ссылки на снятие блокировки по IP, если не используете эту возможность на своем сайте.

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

Для модуля "Фильтр по: IP, Логину или E-Mail" добавлена возможность добавления блокируемых адресов или логинов, или e-mail сразу целыми списками, а не по одному. Что существенно ускоряет процесс добавления, если у вас уже есть готовый список из того что необходимо заблокировать.

Для модуля "Фильтр по: IP, Логину или E-Mail" добавлена возможность редактирования уже существующих правил. Вы можете выбрать и отредактировать любое правило, без необходимости его удаления и повторного добавления.

Для модуля "Фильтр по: IP, Логину или E-Mail" добавлена возможность выбора одновременно нескольких или всех добавленных правил, и массовой разблокировки данных правил в один клик.

Для модуля "Фильтр по: IP, Логину или E-Mail" добавлена поддержка использования IPv6 адресов, которые можно указать для блокировки доступа на сайт. Также добавлена возможность указания IPv6 подсетей для блокировки.

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

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

Для ссылок, публикуемых в публикациях, добавлена возможность использование в них блочных элементов, таких как "p", "div" и т.д. Что позволяет DataLife Еngine более точно и правильнее соответствовать стандартам HTML5.

Добавлена возможность добавления новых пользователей в панели управления DataLife Engine, при работе с панелью с использованием смартфонов.

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

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

В случае если для шаблона E-Mail сообщения, которое отправляется при восстановлении забытого пароля, установлено использование HTML формата для данного письма, то ссылки, которые генерирует тег {%lostlink%} в этом шаблоне, будут формироваться уже в виде готового HTML кода, а не просто текстовые ссылки.

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

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

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

Лимит на количество символов метатега Description для категорий увеличен до 300 символов. Максимальная длина соответствует теперь максимальной длине, установленной поисковой системой Google, для вывода данной информации в результатах поиска.

Улучшен поиск похожих новостей на сайте. Показ похожих новостей стал более релевантным по сортировки найденных публикаций.

Улучшена поддержка IPv6 адресов посетителей сайта. В некоторых определенных случаях полный адрес мог не помещаться в базу данных. Теперь длина полей зарезервирована согласно спецификации RFC 4291.

Улучшено формирование метатега og:description протокола Open Graph при просмотре полных новостей. Формирование происходит более корректно при использовании в качестве основного контента дополнительных полей для публикаций.

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

Добавлена поддержка протокола tel: для ссылок публикуемых на сайте при помощи BB тегов.

Обновлены визуальные редакторы TinyMCE и Froala до актуальных версий. Исправлен ряд выявленных ошибок в данных редакторах.

Исправлена проблема, с использованием в дополнительных полях профиля пользователей, полей с типом "Список", в которых использовались значения с использованием символа "|".

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

Исправлена проблема, при которой нельзя было использовать теги [lееch] для внутренних страниц сайта, и разрешалось использование только для внешних сайтов.

Исправлена проблема, при которой нельзя было приступить к обновлению сайта на новую версию, в случае если сайт был в кодировке отличной от UTF-8 при этом логин или пароль администратора содержал в себе буквы, написанные на кириллице.

Исправлена проблема, при которой не появлялось всплывающее окно о поступлении новых персональных сообщений, если пользователь самостоятельно вышел из своего аккаунта на сайте, а после чего опять вошел в него спустя какое-то время.

Исправлена проблема, при которой не работало редактирование комментариев в панели управления скриптом, в случае если в настройках скрипта был включен TinyMCE редактор.

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

Исправлена проблема, при которой дополнительное поле, имеющее тип "Загружаемый файл", не отображалось на сайте в виде ссылки на скачивание файла, а выводилось простым тегом.

 

Список изменений относительно версии 12.1:

 

Прекращена поддержка кодировки windows-1251.

Добавлена новая система автоматического обновления скрипта DataLife Engine.

Добавлена новая система установки и управления плагинами на сайте.

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

Для сайтов, использующих кодировку utf8 для базы данных, но не использующих четырехбайтную кодировку utf8mb4, добавлена возможность сконвертировать вашу базу данных автоматически непосредственно из админпанели. Данные кодировки полностью совместимы между собой, но переведя ваш сайт на utf8mb4 вы добавите полную поддержку всех символов на своем сайте. Например, поддержку смайлов Emoji, музыкальных символов и многих других.

Добавлена возможность отображать ссылки на предыдущую и следующую публикации при просмотре полной новости.

Тег {news-id} получил глобальную поддержку во всех шаблонах в случае просмотра полной новости.

В админпанели, в разделе управления пользователями, добавлена возможность поиска пользователей, которым запрещено добавление публикаций на сайт. А также добавлена возможность поиска пользователей, которым запрещена публикация комментариев.

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

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

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

Для модуля "Мастер оптимизации" в панели управления скриптом, добавлена возможность выбирать категории, из которых нужно удалить устаревшие новости. Тем самым вы можете фильтровать и