Как убрать ?start=60 из URL пагинации в Joomla
Параметр ?start=60 в адресной строке появляется при использовании стандартной пагинации Joomla. Это не только ухудшает внешний вид ссылок, но и создаёт дубли страниц для поисковых систем. Разберём легальные способы решения проблемы без сложных костылей.
Почему Joomla добавляет ?start в URL
Встроенный компонент пагинации CMS Joomla по умолчанию передаёт номер смещения через GET-параметр start. Это особенность ядра, связанная с архитектурой выборки записей из базы данных. При переходе на вторую страницу каталога формируется адрес вида /katalog-tovarov.html?start=60, где число 60 - количество пропущенных записей.
Стандартные настройки Joomla для ЧПУ
Прежде чем устанавливать расширения, проверьте базовые опции системы:
- Включите SEF (ЧПУ): перейдите в «Система» → «Глобальные настройки» → вкладка «Сайт». Установите «Включить ЧПУ» в значение «Да».
- Включите mod_rewrite: там же выберите «Да» для параметра «Использовать mod_rewrite». Убедитесь, что файл
.htaccessпереименован изhtaccess.txt. - Добавьте суффикс: включите «Добавлять суффикс к URL» - это закроет лишние параметры.
Эти действия убирают ?start=60 только в некоторых шаблонах. Если проблема осталась - переходите к плагинам.
Плагины для чистых URL пагинации
Самый надёжный способ - установить специализированный плагин. Вот проверенные варианты:
1. SH404SEF
Мощное расширение для управления URL. В настройках компонента найдите раздел «Пагинация» и включите опцию «Удалить ?start из URL». Плагин автоматически перестраивает ссылки в формат /katalog-tovarov/str-2.html.
2. JoomSEF
Альтернатива SH404SEF. После установки перейдите в «Компоненты» → «JoomSEF» → «Управление URL». Найдите страницы с параметром start и задайте правило замены на числовой суффикс пагинации.
3. Бесплатный плагин «Pagination URL Cleaner»
Лёгкое решение для небольших сайтов. После установки активируйте его в менеджере плагинов. Он автоматически преобразует ?start=60 в /page-2 без участия пользователя.
Решение через .htaccess (без плагинов)
Если не хотите ставить расширения, добавьте правило редиректа в корневой файл .htaccess:
RewriteCond %{QUERY_STRING} ^start=(.*)$
RewriteRule ^(.*)$ /$1? [R=301,L]Этот код удаляет параметр start из URL, но не добавляет номер страницы. Для SEO лучше использовать плагины, которые формируют осмысленные ЧПУ.
Проверка результата
После внесения изменений очистите кеш Joomla в «Система» → «Очистить кеш». Откройте страницу каталога и кликните на вторую страницу пагинации. В адресной строке должно отображаться /katalog-tovarov/page-2.html или аналогичный чистый URL без ?start=60.