Строгая маршрутизация в Drupal 6,7

Что уж там говорить, Drupal грешит нестрогой машрутизацией. К примеру, вы создаёте маршрут /mypage, то Drupal направит к обработчику все запросы вида /mypage/subpage и /mypage/subpage/subpage2 и т.д.

Вы можете обратиться, к примеру, к публикации /node/100 также и по адресам /node/100/abaracadabra и т.п. По любому из бесчисленного числа адресов!

В этом нет ошибки Drupal, он так устроен (ситуация изменилась в 8й версии). Все последующие части URL интерпретируются как дополнительные параметры.

Это не страшно в плане SEO, т.к. можно в заголовках прописать —

настроить  карту сайта, да и поисковые машины будет склеивать такие дубли. Тем не менее ссылки по «неверным» адресам на ваш сайт могут постепенно накапливаться по разным причинам, и роботы их будут прилежно посещать.

Правильно в таких случаях показывать страницу с кодом 404.

Вся необходимая информация для анализа — избыточен ли URL или нет — может быть взята из таблицы menu_router. Проверку можно повесить на hook_init.

Пример писался для 7й версии. Мне кажется не очень сложно модифицировать и для 6ки. Смысл в том, чтобы строго проверить список известных маршрутов.

Это не всегда подходит для кастомных модулей, но частные случаи можно отсечь, добавив условия к

Что касается модулей из ядра, где все маршруты корректно внесены в реестр через hook_menu, тут никаких осечек не происходит.

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

Создание плагина CKEditor 5 в экосистеме Drupal 10

Февраль 8, 2024 г.

Drupal 10 добавил в ядро модуль wysiwyg CKEditor 5. Т.е. уже из "коробки" у вас есть редактор html кода. API CKEditor 4 и 5 версий значительно отличаются, ...

Читать

Оповещение о новом комментарии в Drupal

Август 28, 2015 г.

Модуль комментариев в Drupal - это не паханное поле для настройки, темизации и программирования. Ситуация с ним не меняется, от версии к версии ядра он остаётся обделенным вниманием разработчиков. Одна из задач - настроить оповещения модератору или админу ...

Читать

Используем сворачивающиеся (collapsible) группы полей в Drupal

Апрель 21, 2012 г.

В админке друпала используется эффект сворачивания/разворачивания группы полей форм (fieldset). Почему бы не использовать эффект для собственных нужд? Эффект реализуется встроенным скриптом misc/collapse.js. Так что не забудьте подключить его в ...

Читать

Программный рендер меню в Drupal 9

Сентябрь 8, 2021 г.

Продолжаю публиковать сниппеты кода для drupal 9, на этот раз несколько полезных вещей, связанных с рендерингом меню. Рендер меню по известному id меню Вы знаете идентификатор, вам нужен рендер: [crayon-6a06d31db228d076256124/] Рендер ...

Читать
 

Комментарии к «Строгая маршрутизация в Drupal 6,7»

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



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