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

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

Убрать мета тег Generator

Май 17, 2023 г.

Выпиливаем мета-тег Generator из заголовочной секции сайта на Drupal. За одно и пару других лишних мета маркеров. Для этого используем hook_page_attachments_alter в теме оформления сайта. 'Generator' в списке мета информации идет под именем system_meta_generator. ...

Читать

Получить список типов товаров в Drupal Commerce

Июль 23, 2023 г.

В терминологии Drupal, типы товаров это - бандлы (bundle) сущности commerce_product. Получить их список можно вот так: [crayon-6939a69c70a17233460003/] Как результат, в $product_types вы получите массив типов товаров, где ключом является ...

Читать

Транслитерация имени файла при создании медиа entity программно в Drupal

Май 21, 2023 г.

При импорте изображений возникает задача транслитерации. Картинки, например, могут содержать буквы национальной кодировки (кириллицы) и/или иметь несовместимые с файловой системой сервера символы. Drupal (начиная с 8.2) объявляет специальный интерфейс, ...

Читать

The installed version of the /Имя модуля/ module is too old to update

Октябрь 9, 2024 г.

При выполнении drush updb вы можете увидеть такое сообщение. Обычно это связано с обновлением модуля до следующей major версии. Тогда в модуле может быть прописан hook_update_last_removed, где прописан номер hook_update, ниже которого номерные ...

Читать
 

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

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



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