Настройка редиректов в Drupal

Речь пойдет о модуле redirect, который, несмотря на свои простые функции, не всегда понятен редакторам сайта.

После установки модуля, на сайте появляется раздел с настройками переадресации. Он расположен вот тут:

/admin/config/search/redirect

При добавлении редиректа, вы указываете от куда (адрес на сайте) и куда (в том числе и адреса внешних ресурсов) произвести перенаправление.

Вот тут часто у редакторов возникает не понимание.

Редиректы не работают

Именно так редакторы описывают свой опыт.

Что на самом деле происходит. Пользователь пытается переадресовать существующую статью куда либо. Но Drupal не будет делать переадресации, если статья с адресом «от куда» существует. Будет показана именно эта статья, а переадресация не сработает.

Рассмотрим пример редиректа:

Если существует статья с alias /new/dennis-k-9-donation, то — увы — редиректа с этого url не будет. Но будут работать редиректы с производных адресов. Например, если вы добавите какой либо параметр к URL, то редирект сработает:

Можно также создать вот такое правило:

Здесь я заменил последний символ на звездочку. Такой редирект сработает даже при наличии статьи на сайте.

Но эти трюки я не рекомендую использовать, т.к. это из разряда побочных эффектов.

Вот правильный алгоритм настройки редикта, если статья с адресом «от куда» существует.

  • Статью следует снять с публикации (unpublish);
  • alias статьи нужно изменить (добавите какой нить суффикс вроде «-archive». Т.е. в нашем примере получится /new/dennis-k-9-donation-archive);
  • теперь можно задать редирект, используя адрес статьи, у нас это /new/dennis-k-9-donation, и редирект начнет работать.

Мало букафф? Читайте есчо !

Ошибка в Drupal Adding non-existent permissions to a role is not allowed. The incorrect permissions are "..."

Июль 25, 2023 г.

Такое иногда вылазит как следствие удаления кастомных классов/модулей, создающих собственные права или инициализирующие права через родительский модуль. Как это пофиксить? Права из роли не были удалены штатно, потому придется сделать следующее: ...

Читать

Создание администратора через drush, Drupal 9

Сентябрь 22, 2023 г.

Полезные команды для создания пользователя с админ правами, используя drush. Для начала нужно создать пользователя (пусть это будет yury): [crayon-6a172670e0403933594724/] Далее назначим ему роль администратора: [crayon-6a172670e0410719152576/] ...

Читать

Drupal deployment

Май 18, 2023 г.

Шпаргалка по настройке и проведению деплоймента для Drupal (начиная с 8й версии). Деплоймент выполняется с использованием git, drush, composer и configuration management. На сервере должны выполняться команды в следующей последовательности: ...

Читать

Получить список типов товаров в Drupal Commerce

Июль 23, 2023 г.

В терминологии Drupal, типы товаров это - бандлы (bundle) сущности commerce_product. Получить их список можно вот так: [crayon-6a172670e0938384088518/] Как результат, в $product_types вы получите массив типов товаров, где ключом является ...

Читать
 

Комментарии к «Настройка редиректов в Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: