From f7808664d3f8cb3874117737cc28cd21def987f8 Mon Sep 17 00:00:00 2001 From: Igor Biki <ibiki@uwaterloo.ca> Date: Thu, 1 Apr 2021 09:14:01 -0400 Subject: [PATCH] ISTWCMS-4708: Adding google tag manager code snippets to template file. --- templates/page/html.html.twig | 106 +++++++++++++++++++--------------- 1 file changed, 59 insertions(+), 47 deletions(-) diff --git a/templates/page/html.html.twig b/templates/page/html.html.twig index 0e97f98e..d4bd119f 100644 --- a/templates/page/html.html.twig +++ b/templates/page/html.html.twig @@ -1,47 +1,59 @@ -{# - /** - * @file - * Theme override for the basic structure of a single Drupal page. - * - * Variables: - * - logged_in: A flag indicating if user is logged in. - * - root_path: The root path of the current page (e.g., node, admin, user). - * - node_type: The content type for the current node, if the page is a node. - * - head_title: List of text elements that make up the head_title variable. - * May contain or more of the following: - * - title: The title of the page. - * - name: The name of the site. - * - slogan: The slogan of the site. - * - page_top: Initial rendered markup. This should be printed before 'page'. - * - page: The rendered page markup. - * - page_bottom: Closing rendered markup. This variable should be printed after 'page'. - * - db_offline: A flag indicating if the database is offline. - * - placeholder_token: The token for generating head, css, js and js-bottom placeholders. - * - * @see template_preprocess_html() - */ -#} - -{% set body_classes = [ - logged_in ? 'user-logged-in', - not root_path ? 'path-frontpage' : 'path-' ~ root_path|clean_class, - not root_path ? 'front' : 'not-front', - node_type ? 'node-page node-page--node-type-' ~ node_type|clean_class, -] %} - -<!DOCTYPE html> -<html{{ html_attributes }} class="no-js"> -<head> - <head-placeholder token="{{ placeholder_token|raw }}"> - <title>{{ head_title|safe_join(' | ') }}</title> - <css-placeholder token="{{ placeholder_token|raw }}"> - <js-placeholder token="{{ placeholder_token|raw }}"> - </head> -<body{{ attributes.addClass(body_classes) }}> -{% include '@components/skiplinks/skiplinks.twig' %} -{{ page_top }} -{{ page }} -{{ page_bottom }} -<js-bottom-placeholder token="{{ placeholder_token|raw }}"> -</body> -</html> +{# + /** + * @file + * Theme override for the basic structure of a single Drupal page. + * + * Variables: + * - logged_in: A flag indicating if user is logged in. + * - root_path: The root path of the current page (e.g., node, admin, user). + * - node_type: The content type for the current node, if the page is a node. + * - head_title: List of text elements that make up the head_title variable. + * May contain or more of the following: + * - title: The title of the page. + * - name: The name of the site. + * - slogan: The slogan of the site. + * - page_top: Initial rendered markup. This should be printed before 'page'. + * - page: The rendered page markup. + * - page_bottom: Closing rendered markup. This variable should be printed after 'page'. + * - db_offline: A flag indicating if the database is offline. + * - placeholder_token: The token for generating head, css, js and js-bottom placeholders. + * + * @see template_preprocess_html() + */ +#} + +{% set body_classes = [ + logged_in ? 'user-logged-in', + not root_path ? 'path-frontpage' : 'path-' ~ root_path|clean_class, + not root_path ? 'front' : 'not-front', + node_type ? 'node-page node-page--node-type-' ~ node_type|clean_class, +] %} + +<!DOCTYPE html> +<html{{ html_attributes }} class="no-js"> +<head> + <!-- Google Tag Manager --> + <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-M9XLVF');</script> + <!-- End Google Tag Manager --> + <head-placeholder token="{{ placeholder_token|raw }}"> + <title>{{ head_title|safe_join(' | ') }}</title> + <css-placeholder token="{{ placeholder_token|raw }}"> + <js-placeholder token="{{ placeholder_token|raw }}"> + </head> +<body{{ attributes.addClass(body_classes) }}> +<!-- Google Tag Manager (noscript) --> +<noscript> + <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M9XLVF" height="0" width="0" style="display:none;visibility:hidden"></iframe> +</noscript> +<!-- End Google Tag Manager (noscript) --> +{% include '@components/skiplinks/skiplinks.twig' %} +{{ page_top }} +{{ page }} +{{ page_bottom }} +<js-bottom-placeholder token="{{ placeholder_token|raw }}"> +</body> +</html> -- GitLab