Ставим метрику на сайт с CMS Drupal

Вы получили код для вставки метрики, осталось дело за малым — разместить его на сайте. Сайт управляется Drupal 8/9/10.

Я покажу как это сделать через изменение темы сайта.

Первая опция — это вставить непосредственно в один из основных шаблонов выданный вам код. Допустим, ваша тема называется «q». Тогда в каталоге /themes/q/templates вы скорее всего найдете файл html.html.twig. Здесь — как гласит инструкция yandex — вставьте код в html секцию <head> или сразу после тега <body>.

Метод рабочий, но не красивый. Мне больше нравится следующий.

Опция №2.

Мы оформим код счетчика в виде библиотеки темы и сразу включим её в настройках темы.

Код счетчика выглядит как то так:

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

Создадим библиотечный файл на основе того, что осталось.

/themes/q/libs/yandex-metrika.js

Теперь добавим описание библиотеки в тему, в файл /themes/q/q.libraries.yml, вот эти строки нужно вставить:

Последний шаг — это включение библиотеки в настройках темы, так она будет загружаться на всех страницах в секции <head> и выполнять свою задачу.

Нужно чтобы в файле /themes/q/q.info.yml появились вот такие строки:

Если секция libraries уже есть — добавьте лишь строку с именем библиотеки.

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

Получение и рендеринг списка дочерних терминов в Drupal

Апрель 27, 2023 г.

Небольшой примера кода для работы с таксономией в Drupal 10. Мы запросим дерево дочерних терминов и произведем их рендеринг. Для начала загрузим какой-либо термин [crayon-699942e0a7032893742418/] Следующий шаг - получение дочерних элементов ...

Читать

Чем заменить drupal_get_path() в Drupal 9/10

Январь 9, 2024 г.

Функция считается устаревшей, начиная с версии ядра 9.3, в 10-й версии функция удалена из кода. В новом API нужно воспользоваться одним из сервисов ядра, которые реализуют нужную функцию. Сервис extension.list.module - реализует функции, связанные ...

Читать

Убираем пустые категории из фильтра во views

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

Весьма распространённый случай, когда в качестве exposed filter используется поле, связанное с таксономией. Так вы получаете набор опций в фильтре для своего представления, которое доступно пользователю. Также весьма часто некоторые дополнительные ...

Читать

Attempting to re-run cron while it is already running.

Июнь 3, 2025 г.

Попытка запустить cron параллельно с запущенным кроном не увенчается успехом, так как Drupal использует блокировку. Но иногда, из-за ошибок во время исполнения, блокировка не снимается. Что делать, если блокировка не была снята штатно? На самом ...

Читать
 

Комментарии к «Ставим метрику на сайт с CMS Drupal»

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



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