Ставим метрику на сайт с 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_get_path() в Drupal 9/10

Январь 9, 2024 г.

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

Читать

Как удалить объявленный ранее @RestResource

Июль 12, 2023 г.

Сначала вы создали в Drupal rest ресурс - /Plugin/rest/resource, поработали с ним, а потом пришло время прощаться. Но вот проблема - система уже знает о ресурсе, и если вы удалите файл, то при попытке зайти в админ панель расширений /admin/modules, вы ...

Читать

Как получить код языка по умолчанию в Drupal

Июль 4, 2025 г.

В Drupal (начиная с версии 8 и выше, включая 10 и 11), чтобы получить код языка по умолчанию сайта (например, en, ru, fr), используйте следующий способ: [crayon-6a91df08f1842775671385/] Подробности запроса: \Drupal::languageManager() — обращение ...

Читать

Как полностью удалить поле в Drupal, если оно «зависло» в хранилище полей

Сентябрь 5, 2025 г.

Иногда в Drupal возникает ситуация: вы удаляете поле с типов сущностей (bundle), но оно не исчезает полностью из системы. UI говорит, что поле «используется», хотя на самом деле ни одна сущность его не использует. В этом случае поле остаётся в конфигурации ...

Читать
 

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

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



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