FirstChildRedirect – это сниппет, который перенаправит указанный ресурс к первому дочернему ресурсу. Он подходит как для версии Revolution, так и для Evolution. В версии Revolution настройка происходит легче.
Установка и ошибки
FirstChildRedirect можно загрузить при помощи менеджера задач MODx Revolution или установить вручную, загрузив пакет с сайта MODX Extras. После этого нужно загрузить его в core/packages (оперативная память/пакеты) путем добавления нового пакета через менеджер задач.
FirstChildRedirect так же доступен для версии MODX Evolution, однако в ней не поддерживаются дополнительные параметры, описанные ниже.
Использование сниппета
Он довольно прост в использовании. Просто вызовите некэшированный сниппет в контенте или шаблоне ресурса-контейнера, который Вы хотите переадресовать к его первому дочернему документу.
|
Или же, Вы можете указать один или более параметров для вызова сниппета, которые будут влиять на процесс переадресации.
Параметр |
Evo/Revo |
Детали |
По умолчанию |
&docid |
Да/Да |
Присвоение ID документа как ID другого ресурса заставит сниппет использовать этот ресурс как контейнер, к которому нужно обращаться для первого дочернего документа. |
current resource ID (ie 475 – идентификатор текущего ресурса (ie 475 |
&default |
Нет*/Да |
Ресурс для переадресации, если не найден дочерний ресурс. Это может быть либо ID ресурса, либо одна из следующих настроек: site_start, site_unavailable_page, error_page or unauthorized_page. * В версии Evolution, так же, настройка по умолчанию - site_start. При необходимости, ее можно изменить в действительном коде сниппета. Просто найдите: $modx->config['site_start'] и замените на ID или одну из упомянутых настроек. |
site_start setting |
&sortBy |
Нет/Да |
Любое имя поля действительного ресурса для сортировки найденных дочерних документов. |
menuindex setting – настройка индекса меню |
&sortDir |
Нет/Да |
'desc' – нисходящий (переадресовывает к наивысшему индексу меню или полю &sortBy); 'asc' – восходящий (переадресовывает к наименьшему индексу меню или полю &sortBy). |
"asc" |
&responseCode |
Нет/Да |
Код отклика (код состояния) для отправки переадресации. По умолчанию установлен 301 Редирект - "HTTP/1.1 301 Moved Permanently" (HTTP/1.1 301 Перемещено перманентно), но так же содержит ярлыки 302 Редирект (временное перемещение) – Вы так же можете указать полный код отклика (включая HTTP и имя) для других. Добавлено в версии 2.3.1. |
301 |