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

<< Click to Display Table of Contents >>

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

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

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

 

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

Добавлена поддержка и использование искусственного интеллекта при создании и редактировании публикаций. Искусственный интеллект поможет вам быстро создать необходимый текст или переписать или изменить стиль написания текста, или сделать перевод и многое другое по вашему желанию. Поддерживается использование искусственного интеллекта на основе API ChatGPT. При этом в настройках вы можете указать точку входа для общения с ChatGPT, тем самым вы можете использовать не только напрямую ChatGPT от OpenAI, но и любой сервис, который поддерживает данный API. Например, пользователи из России, где прямое использование ChatGPT запрещено, могут использовать сервис от https://proxyapi.ru для получения доступа к ChatGPT. Помимо всего прочего вы можете в настройках гибко настроить как необходимо использовать ChatGPT, какую языковую модель необходимо задействовать, каким группам пользователей разрешено использовать искусственный интеллект, стиль ответа, максимальные лимиты и ограничения на длину ответа.

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

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

Для пользовательского вывода публикаций с использованием тега {custom ….} добавлена поддержка нового параметра unique="yes", который указывает что публикации в этом блоке не должны повторятся если они уже выводились на сайте, т.е. в данном блоке нужно выводить уникальные публикации. Это позволить избегать в блоках пользовательского вывода публикаций повторения одних и тех же новостей, если они подпадают под одни и те же критерии вывода. Например теги два тега {custom category="1" unique="yes" limit="1"} и {custom category="1" unique="yes" limit="1"} выведут разные публикации, несмотря на одни и те же параметры, первый тег выведет первую новость из категории, а второй уже вторую, пропустив первую. Также если публикация выводилась в блоке {content} она также не будет выводится при наличии данной опции в теге {custom ….}.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

При вставке текста в редактор улучшена очистка вставляемого кода текста от "мусорного кода" во вставляемом тексте.

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

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

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

Для глобального шаблонного тега {catmenu …} предназначенного для вывода списка категорий, добавлена поддержка нового параметра idexclude="1,2,3-5" в котором вы можете указать ID категорий или диапазон категорий, которые не нужно включать в список категорий, и будут выведены все категории кроме указанных.

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

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

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

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

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

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

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

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

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

Добавлена возможность вставлять live трансляции с сервиса YouTube на свой сайт при помощи тегов [mediа=…..]

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

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

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

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

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

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

Добавлена корректная поддержка вставки публикаций с твиттера с использованием тегов [mediа=…] в связи с тем, что сервис изменил домен на x.com

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

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

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

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

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

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

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

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

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

Список изменений в версии 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} в случае если был отключен ЧПУ в настройках скрипта и новость при этом была опубликована в нескольких категориях.