Перенаправления
Модуль redirects предоставляет модели и пользовательский интерфейс для управления произвольными перенаправлениями между URL-адресами и Pages или другими URL-адресами.
Установка
Модуль redirects по умолчанию не включён. Для его установки добавьте wagtail.contrib.redirects в INSTALLED_APPS и wagtail.contrib.redirects.middleware.RedirectMiddleware в MIDDLEWARE в файле настроек проекта Django.
INSTALLED_APPS = [
# ...
'wagtail.contrib.redirects',
]
MIDDLEWARE = [
# ...
# all other django middlware first
'wagtail.contrib.redirects.middleware.RedirectMiddleware',
]
Этот приложение содержит миграции, поэтому убедитесь, что вы выполнили команду migrate django-admin после установки.
Использование
После установки в меню «Настройки» должно появиться новое пунктом меню «Перенаправления». Здесь вы можете добавить произвольные перенаправления на ваш сайт.
Рецепт модели страницы для автоматического создания перенаправлений при изменении сокращения страницы, см. Автоматическое создание перенаправлений при изменении сокращения страницы.
Руководство по интерфейсу для редакторов, см. Управление перенаправлениями.
Автоматическое создание перенаправлений
Новое в версии 2.16.
Wagtail автоматически создаёт постоянные перенаправления для страниц (и их потомков), когда они перемещаются или изменяется их сокращение. Это помогает сохранить рейтинги страниц в поисковых системах с течением времени и помогает посетителям сайта попадать на нужную страницу при использовании закладок или устаревших ссылок.
Создание перенаправлений для альтернативных маршрутов страниц
Если ваш проект использует RoutablePageMixin для создания страниц с альтернативными маршрутами, вы можете переопределить метод get_route_paths() для этих типов страниц. Добавление популярных маршрутов в этот список приведёт к созданию дополнительных перенаправлений, помогая посетителям альтернативных маршрутов попасть на нужную страницу.
Дополнительную информацию см. в get_route_paths().
Отключение автоматического создания перенаправлений
По умолчанию реализация Wagtail лучше всего подходит для проектов среднего размера (5000 страниц или меньше), которые в основном используют встроенные методы Wagtail для генерации URL-адресов.
Переопределения следующих Page методов учитываются при генерации перенаправлений, но использование определённых полей страницы в этих переопределениях вызовет дополнительные запросы к базе данных.
Если вы считаете, что эта функция не подходит для вашего проекта, вы можете отключить её, добавив следующее в настройки вашего проекта:
WAGTAILREDIRECTS_AUTO_CREATE = False
Команды управления
import_redirects
$ ./manage.py import_redirects
Эта команда импортирует и создаёт перенаправления из файла, предоставленного пользователем.
Параметры:
- src Путь к файлу, из которого вы хотите импортировать перенаправления.
- site Сайт, на который вы хотите сохранить перенаправления.
- permanent Если импортируемые перенаправления должны быть постоянными (True) или нет (False). По умолчанию True.
- from Индекс столбца, который вы хотите использовать в качестве значения перенаправления от.
- to Индекс столбца, который вы хотите использовать в качестве значения перенаправления на.
- dry_run Позволяет выполнить импорт без внесения изменений.
- ask Позволяет проверить и одобрить каждое перенаправление перед его созданием.
Класс Redirect
© 2014-present Torchbox Ltd and individual contributors.
All rights are reserved.
Licensed under the BSD License.
https://docs.wagtail.org/en/v2.16.3/reference/contrib/redirects.html