Что делать, если часть тегов в DLE не работает при использовании PHP 7?
Не мне вам говорить, что PHP 7 является куда более производительной версией PHP относительно других своих предшественников. На личном опыте знаю, что многие громоздкие проекты, просто переведенные на эту версию PHP, сразу начинают показывать хорошие показатели скорости загрузки и работы сайта в целом.
DataLife Engine (если не ошибаюсь, то начиная с версии 10.6) полноценно поддерживает переход на PHP 7. Но есть одно «но». На некоторых хостингах при переходе на эту версию могут наблюдаться некоторые проблемы с сайтом. А именно, перестают работать должным образом теги [available], [xfgiven] и другие при подключении файлов шаблонов, где они содержаться, через тег «include».
Поначалу я думал, что проблема была в неправильно обновленной CMS или же в кэшировании данных. Но хорошенько поискав, в чем дело, нашел-таки решение проблемы.
Все, что вам нужно сделать, чтобы решить проблемы с этими тегами, – это внести правки в конфигурационный файл php.ini.
А именно – в самый низ файла вставить:
pcre.jit = 0
После этого очистите кэш сайта.
Таким образом, работоспособность всех тегов восстановится.
К слову, на хостинге Beget такую же процедуру можно сделать с помощью директив в настройках доменов.
Для этого перейдите в раздел «Управления сайтами» и нажмите на версию вашего PHP.

В всплывающем окне нажмите на ссылку «Добавить директиву» и в появившемся поле вставьте:
pcre.jit = 0
И нажмите «Применить».

После чего подождите порядка 5–10 минут, пока ваши изменения вступят в силу.
До новых встреч!