Reemake Digital Agency · Модуль AJAX Content

Мультиязычные URL
для AJAX-карточек материалов

3 языка — 3 версии сайта. 3 набора URL. 3 набора материалов. Если AJAX-подгрузка не учитывает язык — пользователь на /en/ получает русские карточки. Разберём по шагам, как модуль Reemake AJAX Content решает эту проблему.

Сравнительная таблица

Что происходит без учёта языка и с ним

ПараметрБез учёта языкаRM VK Sender (с учётом)
Карточки на /en/Смешаны русские и английскиеТолько материалы с языком en
URL в карточкеБез языкового префикса — ведёт на основную версиюС префиксом /en/ через JRoute
Материалы без языкаПоказываются везде — путают пользователяРежим "все языки" — показывается на всех версиях
Переключение языковТеряется контекст подгрузкиНовые карточки грузятся в текущем языке
КешОдинаковый для всех языковКеш-ключ с языковым тегом
SEOДубли контента, hreflang не работаетПравильные hreflang и канонические URL

Как работает

Логика мультиязычности в модуле

1. Модуль определяет текущий язык сайта через Factory::getApplication()->getLanguage().

2. Читает поле language из #__content — язык каждого материала.

3. Фильтрует материалы: текущий язык + записи со звёздочкой (*), которые показываются везде.

4. Формирует URL через JRoute — автоматически добавляет языковой префикс.

$lang = Factory::getApplication()->getLanguage()->getTag();
$query->where($db->quoteName('language') . ' IN (' .
    $db->quote($lang) . ', ' . $db->quote('*') . ')');

Пользователь на /en/ видит только английские материалы. Пользователь на /ru/ — только русские. Материалы без языка — на всех версиях. Никаких смешений.

Кейс · ГТРК «Брянск»

Федеральное медиа: RU + EN без смешения

Задача: ГТРК «Брянск» (Россия 1) — новостной портал на Joomla 6. Английская версия для международных партнёров и пресс-служб. AJAX-подгрузка до этого отдавала на /en/ русскоязычные материалы — выглядело как баг.

Что сделали: установили Reemake AJAX Content с учётом мультиязычности. Настроили фильтр по языку через JLanguage. Настроили кеш-ключ с языковым тегом. Проверили hreflang и канонические URL — Google не находит дублей.

Результат: на /en/ — только английские материалы. На /ru/ — только русские. Переключение языков не сбрасывает подгрузку. Английская версия начала ранжироваться в Google.com за 2 месяца.

Вопросы и ответы

Про цены и сроки

Сколько стоит настройка мультиязычности?
Стоимость зависит от задач проекта — назовём после аудита. Считаем смету по составу работ: фиксируем в договоре.

Сколько времени занимает внедрение?
Отвечаем в течение рабочего дня. Базовая настройка — 1–2 рабочих дня. Если языков больше двух или есть кастомные правила — обсуждаем сроки отдельно.

Работает с плагинами перевода?
Да, через стандартные поля языка. Совместимо с Joomla Language Manager, Falang, JoomFish.

Что если языков 5+?
Работает без ограничений. Кеш-ключ учитывает каждый тег. Скорость не страдает — фильтрация по индексированному полю language.

Обсудим мультиязычный сайт

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

Обсудим задачу →
8 (950) 442-49-00 reemake@inbox.ru Max Messenger Max

с 8:00 до 20:00 (МСК)

г. Пермь