Завершен основной этап разработки версии 14.0, релиз находится на тестировании и предрелизной подготовке, ну а пока мы предлагаем вам ознакомиться с информацией о том, что ждет вас с выходом новой версии.
Были подготовлены и реализованы следующие изменения:
1. Добавлен новый плеер для проигрывания видео на сайте. Новый плеер обладает улучшенной поддержкой актуальных браузеров и устройств и имеет более современный дизайн. Помимо визуальных улучшений новый плеер имеет и новые функциональные возможности, а именно поддерживает режим "Картинка в Картинке" для браузера, а для устройств Apple поддерживает проигрывание видео по AirPlay на другие устройства. Также в плеере реализовано несколько различных цветовых схем, которые вы можете выбрать в настройках плеера в админпанели.
2. Для автоматической системы обновления плагинов, добавлена передача версии DLE на сервер проверки наличия новых версий плагина, при помощи параметра 'version', который содержит в себе версию установленного скрипта DLE на данном сайте. Сервер разработчика плагина может проверить какая версия DLE используется и в зависимости от этого либо отдавать информацию о наличии новой версии или нет. А также может отдавать разные версии и копии плагина для разных версий DLE. Тем самым можно исключить, когда новая версия плагина будет отдаваться на сайт с более старой версией DLE, которую данный плагин не поддерживает. Информация о версии DLE может быть передана как POST запросом, так и GET, в зависимости от наличия тех или иных настроек на сайте где работает DLE, поэтому для разработчиков плагинов рекомендуется проверять версию через входящую глобальную переменную $_REQUEST['version'].
3. Добавлена возможность использования в редакторах для новостей и комментариев нативных Emoji смайлов. При включении данной настройки вместо картинок со смайлами будет выводится список поддерживаемых операционной системой пользователя Emoji смайлов. Визуальный вид смайлов также напрямую зависит от того на каком устройстве будет просматриваться контент. Общее количество смайлов поддерживаемых DataLife Engine более полутора тысяч. Для удобства Emoji смайлы сгруппированы по категориям, а также на самом верху списка отображаются 16 смайлов, которые пользователь использовал в последний раз. Тем самым наиболее используемые смайлы ему не придется постоянно искать в общем списке. Включается поддержка нативных Emoji в настройках скрипта в админпанели. В случае отключения данной настройки, используется обычная система смайлов, основанная на изображениях, как и ранее. Поддержка нативных Emoji добавлена во всех трех редакторах, имеющихся в DLE.
4. Для изображений, загружаемых на сервер добавлена возможность включения обработки изображений при помощи сервиса TinyPNG. Данный сервис производит дополнительное сжатие картинок, по самым современным алгоритмам без потери качества, что позволяет существенно снизить их размер и как следствие существенно ускорить загрузку ваших сайтов. Помимо этого, при создании уменьшенных копий с фиксированными размерами, данный сервис может производить поиск на изображении значимых обьектов (лиц людей, животных) и тем самым создавать более качественные уменьшенные копии с более полезной на них информацией в полностью автоматическом режиме. Включается данная возможность в настройках скрипта в админпанели. Так как бесплатное использование сервиса ограниченно определенным объёмом картинок в месяц, в настройках скрипта вы можете отключить ряд параметров для уменьшения количества использования данного сервиса. Например, можно отключить использование для аватаров, или отключить алгоритмы интеллектуального поиска объектов.
6. Полностью переработана цветовая схема ночной темы оформления в админпанели. Новая цветовая схема была разработана специально с учетом комфортной работы с ней как днем, так и ночью. В связи с чем световая палитра была смешена в сторону более мягких цветовых оттенков.
7. В настройки оформления админпанели добавлена возможность включения автоматического включения ночного режима для панели управления. При этом панелью будет учитываться время года, т.к. в разное время года темнеет в разное время. А также будет учитываться часовой пояс пользователя, который он установил в настройках, если он отличается от часового пояса сайта. Все это позволяет админпанели более оптимально автоматически переводить отображение панели на ночную схему.
8. Добавлена возможность включать и отключать категории. Данная возможность позволит вам при необходимости временно выключить категорию если она в какой-то момент не нужна, вместо ее удаления. Так как удаление категории и повторное ее добавление меняет его ID и как следствие теряется ее привязка к существующим новостям, включение и отключение категории является альтернативным действием, при котором категория убирается с сайта, но при обратном включении возвращается все в обратное состояние и ранние новости также сохраняют свою привязку к данной категории и появляются в ней автоматически при включении категории.
9. При добавлении и редактировании публикаций добавлена возможность указывать самостоятельно ID похожих новостей для данной публикации. При этом вы можете задать также и порядок вывода похожих новостей, они будут выводится ровно в том порядке, в котором вы их указали. Данное поле можно оставить пустым, в таком случае поиск произойдет автоматически. Также вы можете осуществить повторный автоматический поиск похожих публикаций только для одной конкретной новости, без необходимости сброса кеша похожих публикаций для всех новостей.
10. Добавлена возможность выводить навигацию по страницам для вывода кратких новостей и для пользовательского вывода новостей, отдельно от непосредственно самого блока новостей. Для этого в шаблон main.tpl добавлена поддержка следующих тегов: {navigation} выводит блок навигации по страницам, [navigation] текст [/navigation] выводит текст, заключённый в них если навигация по новостям имеется, [not-navigation] текст [/not-navigation] выводит текст, заключённый в них если навигация отсутствует. Все данные теги являются дополнительными и необязательными и в случае их отсутствия навигация будет выводится, как и ранее в блоке непосредственно новостей, согласно настройкам скрипта. Тем самым вы можете более гибко создавать нужное вам оформление сайта в шаблонах.
11. Добавлена возможность при удалении пользователя, в случае если он имеет публикации на сайте, назначить нового автора для его публикаций. А также при желании можно оставить автора неизменным.
12. Добавлена возможность вывода последних просмотренных пользователем публикаций. Для этого используется тег пользовательского вывода новостей с параметром order="lastviewed", например, {custom order="lastviewed"}. При этом сортировка осуществляется по принципу последний просмотренный, показывается первым. Для осуществления обратной сортировки используется параметр sort="asc". Например, {custom order="lastviewed" sort="desc"} сортировка будет от последнего просмотренного к более раннему, а при {custom order="lastviewed" sort="asc"} сортировка будет от более раннего просмотренного к более позднему. Данная функция будет особенно полезна для сайтов публикующих, например, каталоги, и для показа блоков в которых посетитель может быстро перейти на ранее просмотренные публикации. Включается и отключается учет просмотренных новостей в настройках скрипта в админпанели. DataLife Engine запоминает 20 последних просмотренных публикаций.
13. Добавлена возможность выводить данные из профиля пользователя, который просматривает в данный момент сайт, во всех файлах шаблона. Для этого было введено более тридцати новых глобальных тегов, которые содержат в себе информацию из пользовательского профиля, включая данные из его дополнительных полей. Тем самым вы можете вывести данные авторизованного пользователя не только к примеру, в login.tpl, а также и в main.tpl и в других шаблонах, что открывает новые возможности к гибкому созданию шаблонов. Так как эти данные возможны к использованию в любых шаблонах, будьте внимательны к их использованию в шаблонах, которые подлежат полному кешированию, например, шаблон вывода кратких новостей. В таких случаях кеширование нужно будет отключать. Полный список новых глобальных тегов:
{profile-link} - Выводит ссылку на профиль пользователя
{profile-login} - Выводит логин пользователя
{ip} - Выводит IP пользователя
{foto} - Выводит ссылку на аватар пользователя
{fullname} - Выводит полное имя пользователя
[fullname] текст [/fullname] - Выводит текст заключенный в теги в случае если полное имя указано в профиле пользователя
{land} - Выводит страну пользователя
[land] текст [/land] - Выводит текст заключенный в теги в случае если страна указана в профиле пользователя
{mail} - Выводит E-mail адрес пользователя
{group} - Выводит группу пользователя
{registration} - Выводит дату регистрации пользователя
{lastdate} - Выводит дату последнего посещения пользователя
{group-icon} - Выводит иконку группы пользователя
{time_limit} - Выводит дату до которой пользователь находится в группе, если группа является временной
[time_limit] текст [/time_limit] - Выводит текст заключенный в теги в случае если пользователь находится во временной группе
{comm-num} - Выводит количество комментариев пользователя
{comments} - Выводит адрес ссылки на комментарии пользователя
[comm-num] текст [/comm-num] - Выводит текст заключенный в теги если пользователь имеет комментарии на сайте
[not-comm-num] текст [/not-comm-num] - Выводит текст заключенный в теги если пользователь не имеет комментариев на сайте
{news} - Выводит адрес ссылки на новости пользователя
{rss} - Выводит адрес ссылки на RSS новостей пользователя
{news-num} - Выводит количество новостей пользователя
[news-num] текст [/news-num] - Выводит текст заключенный в теги если пользователь имеет новости на сайте
[not-news-num] текст [/not-news-num] - Выводит текст заключенный в теги если пользователь не имеет новостей на сайте
{new-pm} - Выводит количество непрочитанных персональных сообщений пользователя
{all-pm} - Выводит общее количество персональных сообщений пользователя
{favorite-count} - Выводит общее количество публикаций в закладках пользователя
[profile_xfvalue_X] - Выводит значение дополнительного поля с именем "X" из его профиля
[profile_xfgiven_X] текст [/profile_xfgiven_X] - Выводит текст заключенный в теги если дополнительное поле с именем "X" указано в его профиле
[profile_xfnotgiven_X] текст [/profile_xfnotgiven_X] - Выводит текст заключенный в теги если дополнительное поле с именем "X" не указано в его профиле
{admin-link} - Выводит ссылку на админпанель если он имеет к ней доступ
[admin-link] текст [/admin-link] - Выводит текст заключенный в теги если пользователь имеет доступ к админпанели
{profile-login} - Выводит логин пользователя
{ip} - Выводит IP пользователя
{foto} - Выводит ссылку на аватар пользователя
{fullname} - Выводит полное имя пользователя
[fullname] текст [/fullname] - Выводит текст заключенный в теги в случае если полное имя указано в профиле пользователя
{land} - Выводит страну пользователя
[land] текст [/land] - Выводит текст заключенный в теги в случае если страна указана в профиле пользователя
{mail} - Выводит E-mail адрес пользователя
{group} - Выводит группу пользователя
{registration} - Выводит дату регистрации пользователя
{lastdate} - Выводит дату последнего посещения пользователя
{group-icon} - Выводит иконку группы пользователя
{time_limit} - Выводит дату до которой пользователь находится в группе, если группа является временной
[time_limit] текст [/time_limit] - Выводит текст заключенный в теги в случае если пользователь находится во временной группе
{comm-num} - Выводит количество комментариев пользователя
{comments} - Выводит адрес ссылки на комментарии пользователя
[comm-num] текст [/comm-num] - Выводит текст заключенный в теги если пользователь имеет комментарии на сайте
[not-comm-num] текст [/not-comm-num] - Выводит текст заключенный в теги если пользователь не имеет комментариев на сайте
{news} - Выводит адрес ссылки на новости пользователя
{rss} - Выводит адрес ссылки на RSS новостей пользователя
{news-num} - Выводит количество новостей пользователя
[news-num] текст [/news-num] - Выводит текст заключенный в теги если пользователь имеет новости на сайте
[not-news-num] текст [/not-news-num] - Выводит текст заключенный в теги если пользователь не имеет новостей на сайте
{new-pm} - Выводит количество непрочитанных персональных сообщений пользователя
{all-pm} - Выводит общее количество персональных сообщений пользователя
{favorite-count} - Выводит общее количество публикаций в закладках пользователя
[profile_xfvalue_X] - Выводит значение дополнительного поля с именем "X" из его профиля
[profile_xfgiven_X] текст [/profile_xfgiven_X] - Выводит текст заключенный в теги если дополнительное поле с именем "X" указано в его профиле
[profile_xfnotgiven_X] текст [/profile_xfnotgiven_X] - Выводит текст заключенный в теги если дополнительное поле с именем "X" не указано в его профиле
{admin-link} - Выводит ссылку на админпанель если он имеет к ней доступ
[admin-link] текст [/admin-link] - Выводит текст заключенный в теги если пользователь имеет доступ к админпанели
14. Для шаблона поиска (search.tpl) добавлена возможность верстать таблицу с параметрами поиска по своему усмотрению. Для этого помимо общего {searchtable} который выводит все параметры для задания поиска целиком, было дополнительно добавлено 15 новых тегов, каждый из которых выводит только одно поле ввода или выбора без привязки к визуальному оформлению. Тем самым вы можете создать свое нужное вам оформление поиска, встроить его в оформление любого HTML фреймворка, убрать ненужные вам поля и опции и так далее. Были добавлены следующие теги:
[simple-search] текст [/simple-search] - Выводит текст заключенный в теги если производится поиск по сокращенным
[extended-search] текст [/extended-search] - Выводит текст заключенный в теги если производится поиск по расширеным параметрам
{searchfield} - Выводит поле для заполнения текста который необходимо найти
{word-option} - Выводит чекбокс параметра поиска заданного текста (точное совпадение всех слов или нет)
{search-area} - Выводит выбор области поиска на сайте
{userfield} - Выводит поле для ввода автора публикаций
{user-option} - Выводит чекбокс параметра поиска автора (точное совпадение всех слов или нет)
{news-option} - Выводит выбор параметров комментариев у новостей
{comments-num} - Выводит поле для ввода количества комментариев у новостей
{date-option} - Выводит выбор параметров даты у новостей
{date-beforeafter} - Выводит выбор параметров новее или старее даты у новостей нужно найти
{sort-option} - Выводит выбор параметров сортировки найденных результатов
{order-option} - Выводит выбор порядка сортировки (возрастание или убывание)
{view-option} - Выводит выбор режима отображения найденных результатов
{category-option} - Выводит выбор категорий в которых необходимо произвести поиск
[extended-search] текст [/extended-search] - Выводит текст заключенный в теги если производится поиск по расширеным параметрам
{searchfield} - Выводит поле для заполнения текста который необходимо найти
{word-option} - Выводит чекбокс параметра поиска заданного текста (точное совпадение всех слов или нет)
{search-area} - Выводит выбор области поиска на сайте
{userfield} - Выводит поле для ввода автора публикаций
{user-option} - Выводит чекбокс параметра поиска автора (точное совпадение всех слов или нет)
{news-option} - Выводит выбор параметров комментариев у новостей
{comments-num} - Выводит поле для ввода количества комментариев у новостей
{date-option} - Выводит выбор параметров даты у новостей
{date-beforeafter} - Выводит выбор параметров новее или старее даты у новостей нужно найти
{sort-option} - Выводит выбор параметров сортировки найденных результатов
{order-option} - Выводит выбор порядка сортировки (возрастание или убывание)
{view-option} - Выводит выбор режима отображения найденных результатов
{category-option} - Выводит выбор категорий в которых необходимо произвести поиск
15. В настройки скрипта добавлена возможность включения и отключения использования Яндекс Дзен при экспорте RSS потока. В случае отключения данной возможности, данная опция не будет отображаться при добавлении и редактировании публикаций.
16. В настройки скрипта добавлена возможность включения и отключения использования Яндекс Турбо при экспорте RSS потока. В случае отключения данной возможности, данная опция не будет отображаться при добавлении и редактировании публикаций.
17. В админпанели, в разделе редактирования публикаций, добавлена возможность при расширенном поиске, осуществить поиск публикаций, содержащих определенные ключевые слова из облака тегов. Тем самым вы можете быстро выбрать для редактирования публикации, которые содержат нужное ключевое слово из облака тегов.
18. В админпанели, в разделе редактирования публикаций, добавлена возможность для массовых действий над новостями, включать и отключать Яндекс Дзен для выбранных публикаций.
19. В админпанели, в разделе редактирования публикаций, добавлена возможность для массовых действий над новостями, включать и отключать Яндекс Турбо для выбранных публикаций.
20. В настройки категорий добавлена возможность указывать включено ли для данной категории использования Яндекс Дзен по умолчанию или нет. В случае отключения данная опция будет автоматически отключена по умолчанию при выборе данной категории при добавлении новости. Тем самым нет необходимости каждый раз отключать эту опцию у каждой новости. Но вы можете всегда включить эту опцию у новости отдельно при желании.
21. В настройки категорий добавлена возможность указывать включено ли для данной категории использования Яндекс Турбо по умолчанию или нет. В случае отключения данная опция будет автоматически отключена по умолчанию при выборе данной категории при добавлении новости. Тем самым нет необходимости каждый раз отключать эту опцию у каждой новости. Но вы можете всегда включить эту опцию у новости отдельно при желании.
22. Для пользовательского вывода публикаций на сайте при помощи тега {custom ...} добавлена поддержка нового параметра sortbyuser="yes" который разрешает возможность использования пользовательской сортировки [sort]{sort}[/sort] для данного блока публикаций. В случае если включен данный параметр, то посетители сайта могут сами выставлять удобную им сортировку новостей для даннного блока по своему желанию, аналогично как они это могут делать для тега {content}.
23. Добавлена возможность автоматического импорта аватаров пользователей при их авторизации на сайте с помощью сервисов Google и Яндекса.
24. В связи с появлением нового API 2.0 для авторизации на сайте с использованием mail.ru, и возможным скорым отключением поддержки старого API на данном сервисе, добавлена поддержка нового API 2.0 https://o2.mail.ru. Внимание новое API требует создание нового приложения на сервисе. Поэтому если на вашем сайте уже присутствует авторизация через mail.ru, то вам необходимо создать новое приложение https://help.mail.ru/developers/oauth/app после чего задать данные этого приложения в настройках DataLife Engine в админпанели.
25. Добавлено формирование метатега og:description протокола Open Graph при просмотре статических страниц на сайте.
26. Для шаблонов вывода кратких и полных новостей (shortstory.tpl и fullstory.tpl) добавлена поддержка новых тегов [not-image-x] текст [/not-image-x] которые выводят текст, указанный в них только в случае если картинка с номером X отсутствует в новости. Данные теги будут полезны для вывода, например, каких-либо собственных заглушек, если отсутствует нужная картинка в тексте публикации.
27. Для комментариев (шаблон comments.tpl) добавлена поддержка использования баннерных тегов {banner_X} из модуля рекламных материалов в админпанели. Тем самым вы можете, например, вставлять рекламные теги между комментариями в определенных местах.
28. Добавлена поддержка использования баннерных тегов {banner_X} опубликованных в тексте публикаций, при выводе их в версии для печати на сайте.
29. Для рейтинга публикаций добавлено использование нового тега {ratingscore} в шаблонах вывода краткой и полной новости (shortstory.tpl и fullstory.tpl). Данный тег выводит число усредненного рейтинга от одного до пяти, с сохранением дробного значения. Например, в зависимости от выставленной оценки это может быть 1.6 или 4.2 и т.д. Данный тег позволяет задать, например, собственное оформление звезд рейтинга с частичным заполнением, а не только 2 или 4 заполненных звезды.
30. Для рейтинга комментариев также добавлено использование нового тега {ratingscore} в шаблоне вывода комментариев (comments.tpl). Данный тег выводит число усредненного рейтинга от одного до пяти, с сохранением дробного значения. Например, в зависимости от выставленной оценки это может быть 1.6 или 4.2 и т.д. Данный тег позволяет задать, например, собственное оформление звезд рейтинга с частичным заполнением, а не только 2 или 4 заполненных звезды.
31. При использовании массовой рассылки писем в админпанели, добавлено использование рекомендованного заголовка Precedence: bulk; в письмах. В целях избегания попадания вашей рассылки в спам.
32. Добавлена поддержка поиска автоматической подсказки без учета регистра букв при заполнении облака тегов и дополнительных полей, имеющих тип 'перекрестные ссылки'. При этом сами поля сохраняются в базе данных с учетом указанного при заполнении полей регистра букв.
33. Добавлена поддержка тегов {title limit="X"} и {short-story limit="X"} для шаблонов вывода RSS потока.
34. Адаптирован показ подсказок в админпанели, в зависимости от размеров экрана мониторов. Теперь расположение подсказок будет таким, чтобы они помещались на экран корректно, независимо от размеров экрана монитора и его разрешения.
35. Для дополнительных полей, имеющих тип "перекрестные ссылки", добавлена поддержка использования символов фигурных и квадратных скобок, а также двоеточия.
36. Увеличена скорость перестроения публикаций в админпанели, а также исправлены проблемы, которые могли приводить к некорректной конвертации некоторых символов в дополнительных полях.
37. Добавлена регистронезависимая проверка логинов и e-mail адресов, запрещенных для регистрации, написанных на кириллице и других языках, отличных от английского.
38. Добавлена поддержка копирования аватаров пользователей из социальной сети Вконтакте после изменений в API данной социальной сети.
39. Проведена адаптация кода и добавлена поддержка PHP 7.4.xx
40. Обновлена библиотека HTML Purifier до актуальной версии.
41. Для функции GzipOut добавлена возможность передачи второго параметра, при использовании которого в отладочной информации будет выведена вся информация по MySQL запросам, а именно сколько времени заняло выполнение того или иного MySQL запроса, и какой запрос был осуществлен к базе данных. Например при использовании GzipOut(true) будет выведена общая отладочная информация по скрипту, а при использовании GzipOut(true, true) будет выведена также дополнительная информация по каждому MySQL запросу к БД. Данное нововведение будет полезно разработчикам модулей и оптимизаторам сайтов для выявления проблем и диагностики.
42. При редактировании пользователей в админпанели и на сайте изменен формат вывода даты в поле, в котором указана дата, до которой он находится во временной группе. Формат был адаптирован под используемый всплывающим календарем, чтобы в календаре отображалась указанная дата и время.
43. Исправлена проблема, при которой не работала динамическая загрузка комментариев с использованием Ajax при включении в настройках скрипта jQuery 3.xx
44. Исправлена проблема, при которой нельзя было удалить пользователя при редактировании его профиля непосредственно на сайте.
45. Исправлена проблема, при которой при одновременной смене e-mail адреса и включении двухфакторной авторизации в настройках профиля, невозможно было подтвердить смену e-mail адреса, если старый почтовый ящик недоступен.
46. Исправлена проблема, при которой не работал переход в полноэкранный режим админпанели в браузере Chrome.
47. Исправлена проблема, при которой могло некорректно работать цитирование выделенного текста в публикациях при использовании визуального редактора Froala
48. Исправлена проблема, при которой некорректно работали теги [sort] ... [/sort] при просмотре полной новости.
49. Исправлена проблема, при которой некорректно мог обрабатываться тег {THEME} если он был опубликован в текстах новостей при перестроении публикаций в админпанели.
50. Исправлена проблема, при которой некорректно работало добавление блокировки по IP в настройках профиля на сайте, если использовались звездочки вместо IP маски.
51. Исправлены обнаруженные и заявленные ранее небольшие ошибки в скрипте.
Комментарии