DLE Multi-Language
Полноценная мультиязычность для DLE без дублирования движка
DLE Multi-Language — это профессиональное решение, которое делает ваш сайт по-настоящему многоязычным в рамках одной установки DLE, с одной базой данных и полной поддержкой SEO-требований поисковых систем.
Модуль позволяет добавлять неограниченное количество языков, переводить контент вручную или через искусственный интеллект (GPT, Claude, Gemini, DeepSeek), и предоставляет разработчикам гибкую систему шаблонных тегов для создания любых многоязычных интерфейсов.
Возможности модуля
1. URL-структура и маршрутизация
- Префиксная структура URL — каждый язык получает свой префикс: site.com/en/, site.com/es/, site.com/de/. Язык по умолчанию работает на корневом домене без префикса, что важно для SEO.
- Автоматическая подмена URL — все внутренние ссылки в шаблоне автоматически дополняются языковым префиксом. Разработчику не нужно вручную переписывать href-ы.
- Защита статических ресурсов — папки /uploads/, /templates/, /engine/, /language/ и favicon никогда не получают языкового префикса, что исключает ошибки 404 на изображениях и CSS.
- Поддержка произвольных ISO-кодов — встроенная база из более чем 90 языковых кодов (ISO 639-1) и 90+ кодов стран (ISO 3166-1) со справочными таблицами прямо в админке.
- Переводимый человекопонятный URL (ЧПУ) для каждого языка — у каждого материала можно задать отдельный URL (alt_name) на каждом языке. При просмотре на нужном языке переведённый URL автоматически используется в ссылках, canonical, hreflang и в Sitemap.
- Запоминание выбранного языка — выбранный посетителем язык сохраняется в cookie, и при следующем заходе сайт открывается на нужном языке.
- Автоопределение языка по браузеру — при первом заходе сайт может автоматически открываться на языке посетителя, если этот язык есть в списке.
2. SEO-оптимизация для международных поисковых систем
- Автоматическая генерация hreflang — модуль создает корректные теги <link rel=\"alternate\" hreflang=\"...\"> для всех активных языков, включая обязательный x-default для Google.
- Локализация мета-тегов сайта — home_title, description, short_title и keywords могут быть заданы отдельно для каждого языка через системные настройки.
- Четыре стратегии обработки непереведенных страниц:
- Fallback — показывать оригинальный контент
- Strict Mode — очищать поля, показывая пустые значения
- 404 Not Found — возвращать ошибку поисковику
- Redirect — 301-редирект на главную
- Скрытие непереведенного контента в списках — опция позволяет исключать новости без перевода из главной, категорий и поисковой выдачи для конкретного языка.
- Настраиваемые критерии перевода — администратор сам решает, какие поля (Title / Short Story / Full Story) должны быть обязательно заполнены, чтобы материал считался переведенным.
3. Языковые файлы (.lng) и редактор переводов
- Встроенный визуальный редактор .lng-файлов — больше не нужно править файлы через FTP. Все ключи выводятся в удобной таблице с оригиналом и переводом бок о бок.
- Подсветка отсутствующих переводов — непереведенные ключи сразу видны красным цветом. Счетчик показывает, сколько строк еще нужно перевести.
- Мгновенный поиск — live-фильтр по ключам и по содержимому текста, работает без перезагрузки страницы.
- Создание собственных .lng-файлов — добавляйте любые кастомные файлы (например, my_design.lng) для переводов элементов вашего дизайна.
- Импорт переводов из других языков — двухшаговый визарт позволяет скопировать содержимое .lng-файла между любыми языковыми папками.
- Защита системных файлов DLE — ключи из adminpanel.lng, website.lng и других оригинальных файлов DLE нельзя случайно удалить.
4. Автоматический AI-перевод
- Четыре AI-провайдера — OpenAI (GPT), Anthropic Claude, Google Gemini и DeepSeek. Список моделей модуль берёт у провайдера кнопкой «Обновить модели», поэтому новые модели доступны сразу после выхода.
- Переключение провайдеров на лету — сравнивайте качество перевода разных моделей без изменений в коде.
- Перевод одного ключа одной кнопкой — для точечного редактирования переводов.
- Пакетный AI-перевод всего файла — с прогресс-баром, умной обработкой по 5 ключей за запрос и автоматическим повтором при сетевых ошибках.
- Режим Skip Existing — переводить только пустые ключи, не трогая уже готовые переводы.
- Сохранение технических элементов — AI получает специальные инструкции о том, что переменные типа {user}, HTML-теги и специальная разметка DLE должны оставаться нетронутыми.
- Перевод новостного контента — отдельный механизм переводит заголовки, краткое описание и полный текст новостей с сохранением всех HTML-тегов, стилей и структуры документа.
- Массовый перевод новостей — вкладка «Массовый перевод» переводит весь сайт или выбранные категории и период на нужные языки: заголовки, тексты, мета-теги, теги и многоязычные доп. поля. Перевод идёт в открытой вкладке или в фоне по cron — с прогрессом, паузой, повтором ошибок и автоматической остановкой, если у AI закончился баланс или неверен ключ.
- Своя инструкция для AI — задайте стиль, тон и то, что нельзя переводить. По умолчанию названия игр, приложений, брендов и имена, а также факты — языки, версии, числа — остаются как в оригинале.
- Не перезаписывать заполненные поля — AI переводит только пустые поля: правильные названия и значения, которые вы или парсер уже заполнили, не затираются.
5. Шаблонные теги для разработчиков
Модуль добавляет мощный набор тегов, которые работают в любых .tpl-шаблонах DLE:
- {lang=key} — вывод любой строки из .lng-файла напрямую в шаблоне.
- {lang-code} — двухбуквенный ISO-код текущего языка (удобно для <html lang=\"...\">).
- {home-url} — абсолютный URL главной с учетом текущего языкового префикса.
- {site-title}, {site-description}, {site-name} — локализованные метаданные сайта.
- [if_lang=en,ru]...[/if_lang] — показать блок только для указанных языков.
- [not_lang=en]...[/not_lang] — показать блок всем, кроме указанных языков.
6. Переключатель языков — {lang-select }
Один тег — десятки вариантов оформления без написания jаvascript:
- Четыре типа отображения:
- links — горизонтальный/вертикальный список ссылок
- dropdown — выпадающий список с анимацией
- select — нативный HTML-select (хорош для мобильных)
- auto — автоматическое переключение: dropdown на десктопе, select или links на мобильных
- Настройка отображения элементов — flag, name, native, code — в любом сочетании через параметр show.
- Темы и размеры — light/dark, sm/md/lg через CSS-переменные.
- Анимации — fade, slide и другие эффекты открытия dropdown.
- Позиционирование — bottom-left, bottom-right, top-left, top-right.
- Триггер открытия — click или hover.
- Гибкое управление порядком — параметр order позволяет задать произвольный порядок языков, exclude — исключить ненужные.
- Кастомные названия — через параметр names можно задать свои подписи для любых языков.
- Адаптивный breakpoint — настраиваемая граница переключения между десктопной и мобильной версией.
- Полная доступность — ARIA-атрибуты, поддержка клавиатуры, hreflang-атрибуты у каждой ссылки.
7. Кастомные переключатели через {lang-select-loop}
Для разработчиков, которым нужен полный контроль над HTML-разметкой переключателя, модуль предоставляет loop-тег с собственной системой шаблонизации:
- Переменные внутри цикла: {ls-url}, {ls-code}, {ls-CODE}, {ls-name}, {ls-name-native}, {ls-flag}, {ls-flag-url}, {ls-active}, {ls-selected}, {ls-index}, {ls-count}, {ls-odd}, {ls-even}.
- Условные блоки: [if_ls_active], [if_ls_inactive], [if_ls_first], [if_ls_last], [if_ls_odd], [if_ls_even].
- Можно строить любые custom-интерфейсы: карточки языков с флагами, таб-переключатели, мега-меню с группировкой — все это в рамках обычного HTML-шаблона.
8. Поддержка DLE XFields (дополнительные поля)
- Мультиязычное поле одной галочкой — в настройках любого дополнительного поля DLE включите «Использовать как мультиязычное поле (Multi-Language)» и задайте значения по умолчанию для каждого языка.
- Переводы во вкладке языка — значения на каждом языке заполняются во вкладке языка при редактировании новости, включая списки, картинки и файлы.
- Те же теги в шаблоне — [xfvalue_name] сам выводит значение на языке страницы, без копий полей с языковыми суффиксами.
9. Безопасная установка и удаление языков через AJAX
- Пошаговая установка с прогресс-баром — все операции (создание папки, копирование файлов, добавление колонок в БД, настройка XFields) выполняются поэтапно.
- Устойчивость к 504 Timeout — модуль автоматически переподключается при сетевых ошибках и продолжает операцию с того же шага.
- Клонирование из существующего языка — при создании нового языка можно скопировать все .lng-файлы из любой существующей папки, что значительно ускоряет локализацию.
- Автоматическая установка иконок флагов — модуль сам подбирает правильную иконку страны из встроенной базы, даже если ISO-код языка не совпадает с ISO-кодом страны (например, en → флаг gb).
- Безопасная смена языка по умолчанию — пошаговая фоновая миграция переносит контент между основными и языковыми полями БД без потери данных, что позволяет сменить основной язык сайта даже после его наполнения.
10. Профессиональная админ-панель
- Dashboard со статистикой — статус модуля, количество активных языков, язык по умолчанию — все в одном экране.
- Встроенный справочник ISO-кодов — модальные окна со всеми языковыми и страновыми кодами, флагами и названиями. Клик по строке — код автоматически подставляется в форму.
- Валидация ISO-кодов — модуль мгновенно предупреждает, если вы пытаетесь использовать код страны вместо кода языка (типичная SEO-ошибка).
- Проверка обновлений — автоматическая и ручная проверка новых версий с отображением changelog прямо в админке.
- Мультиязычный интерфейс самой админки — весь модуль построен на .lng-файлах и может быть переведен на любой язык.
11. Совместимость и производительность
- DataLife Engine — версии 19.0 — 21.0.
- PHP — совместим с PHP 7.4 — 8.x.
- Одна база данных — никакого дублирования записей, только дополнительные колонки.
- Минимальное влияние на производительность — модуль работает на уровне шаблонного движка и не влияет на основные запросы DLE.
- Кеш DLE, Memcache и Redis — кешируемые блоки (календарь, архив, облако тегов и другие) хранятся отдельно для каждого языка, а сохранение настроек модуля очищает кеш полностью.
Для кого этот модуль
- Новостные сайты, выходящие на международную аудиторию.
- Корпоративные порталы, которым нужна локализация для разных регионов.
- Блоги и информационные проекты, где важна SEO-видимость в нескольких странах.
- Туристические и event-сайты, обязательно работающие на нескольких языках.
- Любые проекты на DLE, которые хотят добавить мультиязычность без переезда на другую CMS.
Что вы получаете
- Полноценную мультиязычность в рамках одной установки DLE.
- Массовый перевод всего сайта на новые языки — в фоне, без ручной работы с каждой новостью.
- Автоматический перевод контента и интерфейса через ведущие AI-модели 2026 года.
- Корректную SEO-оптимизацию для Google, Яндекса и других поисковых систем.
- Гибкий инструментарий для верстки переключателей языка без написания jаvascript.
- Интуитивный редактор переводов, который сэкономит десятки часов работы с .lng-файлами.
- Профессиональную техническую поддержку и регулярные обновления.
DLE Multi-Language превращает ваш одноязычный сайт в полноценное международное издание за несколько кликов — без боли, без дублирования движка, без потерь в SEO.
Скриншоты
Нажмите на скриншот, чтобы увеличить
Выберите подходящий тариф
Мы предлагаем гибкие варианты лицензирования в зависимости от ваших потребностей.
- 3 сайта
- Открытый исходный код
- Поддержка 12 месяцев
- Без обновлений
- Скачивание 7 дней
- Все функции Стандарта
- 10 сайтов
- Приоритетная поддержка
- Обновления 12 месяцев
- Скачивание 12 месяцев
- Все функции Расширенного
- Сайты без ограничения
- Персональные консультации
- Обновления навсегда
- Скачивание навсегда
- Установка и настройка
- Адаптация под ваш сайт (включая доработку кода)
Всё из Премиума, но ключ не привязан к сайтам и модуль не связывается с нашим сервером.
Сайт — это домен вместе со всеми его поддоменами.
История версий
-
2.8.1 текущая 2 Исправлено
Исправлено 2
- Облако тегов на языковой версии показывает только теги этого языка; если переводов тегов нет — теги основного языка
- Теги {lang=...}, [if_lang] и [not_lang] переводятся и в AJAX-ответах: окно профиля, добавленный комментарий и другие
-
2.8.0 3 Новое
Новое 3
- Над флагом языка в списке новостей — число непереведённых новостей; нажатие на флаг показывает только их
- Массовое действие «Перевести на … (AI)» в списке новостей: отметьте новости, выберите язык — они уйдут в массовый перевод
- Крестик в колонке языка открывает новость сразу на вкладке этого языка, а на галочке видно переведённый заголовок; рядом с «Заголовок» — флаг основного языка
-
2.7.0 1 Новое 1 Исправлено
Новое 1
- В списке новостей в админке — колонка с флагом для каждого языка: галочка, если новость переведена, крестик, если нет. Сразу видно, что ещё нужно перевести
Исправлено 1
- Если к адресу новости добавить префикс языка (/de/games/1118-…html), сайт перенаправляет на эту же новость с её переведённым адресом на выбранном языке (/de/spiele/1118-…html), а не на язык по умолчанию
-
2.6.0 2 Новое 4 Исправлено
Новое 2
- Свой адрес категории на каждом языке: поле «Альтернативное имя» для языка в настройках категории (/de/hintergrunde/ вместо /de/hintergruende-ru/). Ссылки, переключатель языков, hreflang, canonical и карта сайта берут переведённый адрес, старый перенаправляется 301
- Свой адрес статической страницы на каждом языке (/en/about-us.html), со всеми ссылками, переключателем языков и перенаправлением со старого адреса
Исправлено 4
- Листание страниц результатов поиска на языковых версиях сайта снова работает
- Массовый перевод через Claude больше не обрывается с ошибкой «SSL_read: unexpected eof» на длинных текстах; при обрыве связи с AI-сервисом перевод ждёт и повторяет, а не помечает новости ошибкой
- При смене основного языка сайта адреса новостей, категорий и страниц без перевода сохраняются
- Другие плагины могут дополнять модуль: его файлы подключаются через систему плагинов DLE
-
2.5.1 2 Исправлено
Исправлено 2
- Перевод через AI больше не меняет дату публикации новости на сайтах, где дата в базе обновлялась при любой правке записи
- Если нейросеть добавила в перевод ссылки или звёздочки, которых нет в оригинале, запрос повторяется, а такой текст в новость не попадает
Ещё 12 версий
-
2.5.0 1 Новое 9 Исправлено
Новое 1
- У дополнительного поля — режим перевода через AI: «По общей настройке», «Всегда переводить» (даже если поле уже заполнено, например описание, которое парсер взял с чужого сайта) или «Не переводить»
Исправлено 9
- Кнопка «Перевести с оригинала (AI)» переводит дополнительные поля с визуальным редактором и поля с несколькими значениями
- Длинные оформленные тексты сохраняют оформление после перевода: заголовки, списки, таблицы и ссылки не ломаются
- Перевод через DeepSeek стал в несколько раз быстрее и больше не обрывается на длинных текстах; если нейросеть вернула повреждённые символы «�», запрос повторяется
- Страницы переведённых тегов и значений дополнительных полей (/en/tags/…, /en/xfsearch/…) открываются вместо ошибки 404
- Массовый перевод: длинные дополнительные поля переводятся частями, поля с несколькими значениями не склеиваются, поиск по переведённым значениям полей обновляется
- Теги и поиск по дополнительным полям сохраняются, если основной язык сайта тоже есть в списке языков
- Кнопка AI-перевода статических страниц — на языке админки и без потери оформления
- Переключатель языков на телефоне занимает меньше места, в тёмной теме шаблона становится тёмным
- Модуль работает вместе с другими модулями, которые меняют адреса сайта в engine/init.php
-
2.4.0 1 Новое 2 Исправлено
Новое 1
- В настройках дополнительного поля — «Не переводить через AI»: кнопка «Перевести с оригинала (AI)» и массовый перевод пропускают такое поле, например озвучку или студии перевода, которые на каждом языке свои
Исправлено 2
- Переключение языка на странице поиска больше не открывает ошибку 404
- Карты сайта для языков снова создаются, если на сайте также стоят DLE Movie Importer PRO или DLE SEO Pro
-
2.3.0 1 Исправлено
Исправлено 1
- Найдены и исправлены несколько мелких ошибок
-
2.2.1 2 Исправлено
Исправлено 2
- Служебный файл модуля в engine/data больше не открывается из браузера: он хранится в защищённом PHP-файле, а старый файл удаляется при обновлении
- На DLE без испанского языка (19.x) модуль больше не добавляет в выбор языка админки пустой «Spanish», из-за которого открывалась ошибка «Language file not found»
-
2.2.0 3 Новое 1 Улучшено 4 Исправлено
Новое 3
- Массовый перевод новостей: вкладка «Массовый перевод» переводит все новости или выбранные категории и период на нужные языки — в открытой вкладке или в фоне по cron
- Для массового перевода можно выбрать AI-сервис и задать свою инструкцию: стиль, тон, что не переводить. Названия игр, приложений и брендов остаются как в оригинале
- Настройка «Не перезаписывать заполненные поля»: кнопка «Перевести с оригинала (AI)» переводит только пустые поля, названия и доп. поля, заполненные вручную или парсером, остаются
Улучшено 1
- Кнопка «Перевести с оригинала (AI)» и её сообщения — на английском, украинском и испанском в админке на этих языках
Исправлено 4
- Календарь, архив, облако тегов и другие блоки из кеша больше не показываются на чужом языке — в том числе при кеше в Memcache и Redis
- Сохранение настроек модуля очищает кеш сайта полностью, в том числе в Memcache и Redis
- Вместе с DLE Movie Importer PRO краткие новости в списках снова выводятся на языке страницы (DLE 20.0 и новее)
- На DLE 19.0 переключатели в «Настройках» модуля снова выглядят как переключатели DLE, а не как квадратные галочки
-
2.1.0 3 Новое 2 Улучшено
Новое 3
- Дополнительные поля: в настройках поля появилась галочка «Использовать как мультиязычное поле (Multi-Language)» — перевод заполняется во вкладке языка новости, отдельные поля [EN] больше не создаются
- Тег [xfvalue_...] сам выводит значение на языке посетителя — шаблон менять не нужно
- Значение по умолчанию для каждого языка, а у полей-списков — свой список значений на каждом языке
Улучшено 2
- Старые поля [EN] с заполненными переводами переносятся в новую схему автоматически, старые теги вида [xfvalue_поле_en] продолжают работать
- Панель модуля на испанском языке
-
2.0.1 1 Улучшено 5 Исправлено
Улучшено 1
- Если модель отказалась переводить текст или ответ оборвался из-за длины, модуль прямо говорит об этом вместо «AI вернул некорректный JSON».
Исправлено 5
- Новые модели Claude (Opus 5, Opus 4.7 и 4.8, Sonnet 5, Fable) снова работают: «Проверить соединение» и перевод больше не падают с ошибкой «temperature is deprecated».
- Дополнительные поля снова получают языковые копии: у старых полей и у полей, созданных, когда правка DLE не сработала, копии создаются сами при открытии модуля — и поля появляются на вкладке языка при добавлении новости.
- Модели OpenAI GPT-6 и серии o переводят через новый интерфейс OpenAI и не спотыкаются о настройку температуры.
- Gemini 3 переводит с рекомендованной Google температурой: заниженная температура могла приводить к зацикливанию и худшему переводу.
- Длинные статьи больше не обрываются по времени на медленных моделях (DeepSeek V4 Pro, Claude Opus 5, GPT-6, Gemini 3): ожидание ответа увеличено до 3 минут.
-
2.0.0 3 Новое 2 Улучшено 2 Исправлено
Новое 3
- Поддержка DLE 21.0.
- Комментарии по языкам: у каждой языковой версии материала свои комментарии и верные счётчики — в том числе при догрузке комментариев и отправке нового.
- Флаги языков у полей категорий, статических страниц, настроек, групп пользователей и облака тегов — без дублирующей подписи с кодом языка.
Улучшено 2
- Язык по умолчанию хранится в обычных полях DLE: без отдельной вкладки и без повторов при добавлении и редактировании новостей.
- Дополнительные поля всех типов переводятся правильно, включая повторяющиеся и скрытые; языковые копии поля создаются, переименовываются и удаляются вместе с исходным полем.
Исправлено 2
- Настройка «Пустые дополнительные поля перевода» неверно работала с некоторыми типами полей.
- DLE 19.0: часть правок модуля не применялась — теперь применяются все.
-
1.0.3 8 Новое 7 Улучшено 9 Исправлено
Новое 8
- Добавлен умный hreflang: язык объявляется в альтернативных ссылках только если материал действительно переведён. Поисковые системы больше не переходят по альтернативам, ведущим на 404 или на дубль контента.
- Добавлена панель полноты перевода на главной странице модуля: процент переведённого по новостям, категориям, статическим страницам и файлам интерфейса для каждого языка.
- Добавлено обновление списка AI-моделей одной кнопкой: список загружается напрямую от провайдера и сохраняется, поэтому новые модели доступны без обновления модуля. Рядом добавлена кнопка проверки соединения, которая тестирует ключ, модель и прокси.
- Добавлено управление языками: смена папки языка, изменение порядка в переключателе и отключение языка без удаления переведённого контента.
- Добавлены экспорт и импорт языковых файлов в форматах JSON и CSV, включая выгрузку только непереведённых строк — удобно для передачи переводчику.
- Добавлена настройка поведения переключателя для непереведённых страниц: показывать ссылку как обычно, скрывать язык или вести на главную этого языка.
- Языковые карты сайта теперь автоматически подключаются к основному sitemap.xml, поэтому поисковые системы находят их без ручной настройки.
- Расширена транслитерация ЧПУ (alt_name): добавлены армянский, греческий, грузинский, арабский, иврит, персидский, а также казахский и другие кириллические варианты. Для иероглифических языков предусмотрен запасной вариант вместо пустого адреса.
Улучшено 7
- Устаревшие названия AI-моделей теперь переносятся автоматически, поэтому сохранённая ранее модель не остаётся неработающей после переименования у провайдера.
- Поисковые роботы больше не перенаправляются автоматически на другой язык: робот получает именно тот адрес, который запросил. Прежнее поведение можно вернуть отдельной настройкой.
- Автоматическое перенаправление больше не применяется к RSS, ajax-запросам и файлам, чтобы не ломать ленты и сторонние интеграции.
- Кеш страниц теперь очищается автоматически при изменении настроек и списка языков.
- Снижена нагрузка на сайт: языковые файлы админпанели, установщика и самого модуля больше не подключаются при каждом обращении посетителя.
- Проверка обновлений теперь использует собственный суточный кеш и не обращается к серверу обновлений при каждом открытии страницы модуля.
- Cookie выбранного языка теперь выставляется с атрибутами SameSite и Secure.
Исправлено 9
- Исправлена ошибка 404 на ссылках вида /xx/index.php?do=register, ?do=lostpassword, ?action=logout и других: адреса больше не содержат index.php и открываются на всех серверах, включая nginx.
- Исправлена форма поиска на языковых страницах, которая отправляла запрос на несуществующий адрес.
- Исправлена невозможность вернуться на язык по умолчанию при включённом запоминании языка: выбор в переключателе теперь сохраняется корректно для всех типов переключателя.
- Исправлена отдача 403 вместо 404 для непереведённых материалов и статических страниц в режиме «Отдавать 404».
- Исправлена ошибка SQL в пользовательских блоках {custom} с постраничной навигацией при включённом скрытии непереведённых материалов.
- Исправлена работа модуля в подкаталоге сайта: пути к флагам, изображениям и перенаправлениям больше не задаются жёстко от корня домена.
- Исправлен редактор переводов: определение папки языка по умолчанию, критическая ошибка при открытии некоторых языковых файлов на PHP 8 и неработавшая проверка дубликата ключа.
- Исправлена потеря языка у форм, отправляющих данные на корень сайта.
- Устранены предупреждения PHP и возможные конфликты функций при одновременной работе с другими модулями.
-
1.0.2 4 Новое 2 Исправлено
Новое 4
- Добавлен переводимый ЧПУ (alt_name) для каждого языка: отдельное поле URL в форме добавления и редактирования материала с AI-генерацией слага. При просмотре на другом языке переведённый URL используется в ссылках, canonical, hreflang и Sitemap.
- Добавлено запоминание выбранного языка посетителя через cookie: при следующем заходе на сайт без префикса посетитель автоматически перенаправляется на свой язык.
- Добавлено автоопределение языка посетителя по настройкам браузера: если язык есть в списке, посетитель сразу перенаправляется на него.
- Добавлена безопасная смена языка по умолчанию: пошаговая фоновая (AJAX) миграция, которая переносит контент между основными и языковыми полями БД. Предусмотрены предупреждения о рисках, счётчик материалов, защита от прерывания и резервная копия конфигурации.
Исправлено 2
- Добавлены отсутствующие сообщения об ошибках AI-провайдеров (OpenAI, Claude, Gemini, DeepSeek).
- Добавлены недостающие переводы настроек дополнительных полей в украинской локализации.
-
1.0.1 3 Новое 4 Исправлено
Новое 3
- Добавлена полноценная поддержка DataLife Engine 20.0: обновлены XML-модификации и разделены операции для DLE 19.0–19.1 и DLE 20.0+
- Добавлена поддержка прокси, SOCKS5 и SOCKS5H для AI-провайдеров с отдельной вкладкой настроек.
- Добавлена настройка поведения пустых дополнительных полей: использовать значение основного языка либо не отображать поле.
Исправлено 4
- Исправлена загрузка языкового файла ml.lng и отображение текстов модуля в административной панели.
- Исправлено размножение обратных слешей при повторном сохранении материалов.
- Исправлено создание и редактирование языковых .lng-файлов: массивы и сложные значения теперь сохраняются в исходном PHP-формате.
- Исправлена многоязычная работа поиска, статических страниц, тегов, новостей, Sitemap и Google News.
-
1.0.0 1 Новое
Новое 1
- Первый релиз модуля
Чтобы написать комментарий, войдите в аккаунт.
Комментариев пока нет — напишите первым.
В шаблоне ничего менять не нужно, [xfvalue_имя] сам выводит значение на языке страницы. И если поле уже заполнено, например парсером, AI его не перезапишет.
Вручную переводить не придётся: новость переводится одной кнопкой через AI, а весь сайт сразу можно перевести на вкладке «Массовый перевод», хоть в фоне по cron. Потом любой перевод можно поправить руками.
Вы используете один ваш шаблон, а модуль уже внутри него переключает языки. Для этого есть специальные теги — вы просто отмечаете ими те места, где текст должен меняться (меню, кнопки, блоки и т.д.), и модуль сам подставляет нужный язык по URL (/en/, /de/ и т.п.).
Заголовки сайта, описания, статические страницы и новости переводятся прямо в админке — отдельными полями под каждый язык. Никаких копий шаблона делать не надо.
Скрипты имееют 9к строк