Полноценная мультиязычность для 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 переводит только пустые поля: правильные названия и значения, которые вы или парсер уже заполнили, не затираются.
- Названия из источника — если в доп. поле новости есть ссылка на источник (например, Google Play), модуль берёт оттуда официальное название игры, приложения или фильма на каждом языке и передаёт 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 — версии 15.1 — 21.0.
- PHP — совместим с PHP 8.0 — 8.5.
- Одна база данных — никакого дублирования записей, только дополнительные колонки.
- Минимальное влияние на производительность — модуль работает на уровне шаблонного движка и не влияет на основные запросы DLE.
- Кеш DLE, Memcache и Redis — кешируемые блоки (календарь, архив, облако тегов и другие) хранятся отдельно для каждого языка, а сохранение настроек модуля очищает кеш полностью.
Для кого этот модуль
- Новостные сайты, выходящие на международную аудиторию.
- Корпоративные порталы, которым нужна локализация для разных регионов.
- Блоги и информационные проекты, где важна SEO-видимость в нескольких странах.
- Туристические и event-сайты, обязательно работающие на нескольких языках.
- Любые проекты на DLE, которые хотят добавить мультиязычность без переезда на другую CMS.
Что вы получаете
- Полноценную мультиязычность в рамках одной установки DLE.
- Массовый перевод всего сайта на новые языки — в фоне, без ручной работы с каждой новостью.
- Автоматический перевод контента и интерфейса через ведущие AI-модели 2026 года.
- Корректную SEO-оптимизацию для Google, Яндекса и других поисковых систем.
- Гибкий инструментарий для верстки переключателей языка без написания jаvascript.
- Интуитивный редактор переводов, который сэкономит десятки часов работы с .lng-файлами.
- Профессиональную техническую поддержку и регулярные обновления.
DLE Multi-Language превращает ваш одноязычный сайт в полноценное международное издание за несколько кликов — без боли, без дублирования движка, без потерь в SEO.