Программное управление добавлением публикаций в xml sitemap

Благодаря модулю xmlsitemap, XML карту не сложно добавить на любой Drupal-сайт. Модуль позволяет управлять тем, какие типы публикаций добавлять в карту, а какие нет. Если вам этого  достаточно, то дальше можете не читать.

Но если вам требуется более гибкое управление, читайте дальше.

Итак, вы установили xmlsitemap, и настроили его типовое поведение. Что делать, если требуется выборочно включать в карту публикации определенного типа?

Одна из возможностей заключается в «ручном» управлении, когда вы в каждой node устанавливаете требуемое значение. Но при выполнении операции rebuild

ваши установки могут быть переопределены вновь.

Если возможно сформулировать четкое правило, то лучше всего запрограммировать его. К счастью, API модуля предлагает специальную зацепку hook_xmlsitemap_link_alter. Он вызывается каждый раз при обновлении объекта, который может быть отображен в карте сайте.

Вот пример реализации:

В hook передаётся структура описывающая ссылку для xml карты — $link и переменная $context, которая хранит данные, связанные со ссылкой. В нашем случае это объект node.

На основании контекста нужно решить какой статус установить для ссылки: 0 — нет ссылки в xlm карте или 1, если ссылку нужно добавить.

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

Миграция терминов таксономии

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

Термины представляют из себя отдельные сущности, которые подключаются к родительской entity в виде term reference. Потому классический подход - это отдельная предварительная миграция терминов, а потом подключение их, используя migration_lookup плагин. ...

Читать

Подстановка токенов в коде Drupal 9

Август 1, 2021 г.

Ядро и модули объявляют множество токенов подстановки. Рассмотрим как получить доступ к глобальному объекту типа \Drupal\Core\Utility\Token и выполнить подстановку в строке. Ядро предоставляет экземпляр объекта через следующий запрос: [crayon-69ec9b4ecd2a7127198991/] ...

Читать

Раздвигающееся вертикальное меню Drupal 6

Сентябрь 7, 2013 г.

Эта задача из разряда useability. Drupal может штатно создавать блоки вертикальных иерархических меню. Неудобным будет тот случай, когда мы хотим попасть на страницу в глубине иерархии этого меню. Нам придется последовательно заходить на родительские ...

Читать

Пишем логи в Drupal 9

Октябрь 8, 2021 г.

Привычная функция watchdog, которую мы использовали в 6/7 версиях, к девятке пережила эволюцию до сервиса логирования. Бывшее ранее: [crayon-69ec9b4ecd64a808618078/] Сейчас выглядит так: [crayon-69ec9b4ecd651932837087/] Помимо того, ...

Читать
 

Комментарии к «Программное управление добавлением публикаций в xml sitemap»

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



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