Ставим метрику на сайт с 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 уже есть — добавьте лишь строку с именем библиотеки.

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

Реализация блока с внедрением формы

Май 11, 2023 г.

См. основной материал для введения. В имплементации блока требуется сформировать набор переменных и передать его в шаблон. Шаблон был ранее объявлен в основном файле модуля, исходя из макета. [crayon-69afc95aebdcd712798746/] В макете присутствуют ...

Читать

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

Июль 25, 2023 г.

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

Читать

TMGMT переводит поле view_mode, объявленное плагином menu_link_extras

Июнь 17, 2024 г.

Поля, определенные модулями, не попадают в конфиг файлы сайта, и их не получается настроить привычным способом. В данном случае, требуется как то указать TMGMT модулю, что не нужно переводить поле view_mode. Чтобы предотвратить проблему, можно ...

Читать

Использование entityqueue для сортировки элементов во view, основанной на Search API datasource

Апрель 3, 2024 г.

Ранее подход, который я опишу, использовался для nodequeue, сейчас с заменой плагина фунционалом entityqueue, тоже самое можно применить и для него. Проблема: Создано представление (view), где источник данных - элементы datasource Search API. ...

Читать
 

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

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



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