Как добавить код Google Analytics в Drupal 7


Я хочу добавить свой код Google Analytics на свой сайт Drupal без использования модуля. Я читаю темы, связанные с этим, но я не могу сделать это на своем веб-сайте. Я хочу поместить свой код в тег <head></head>. Вот мой код:

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXXX-X']);
  _gaq.push(['_setDomainName', 'example.com']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>
Author: Muhammad Reda, 2013-01-21

2 answers

Откройте папку modules/system в вашей установке Drupal, затем скопируйте файл html.tpl.php в каталог вашей темы. Добавьте код, который вам нравится, в файл и сохраните.

Не забудьте очистить кэш.

 11
Author: Muhammad Reda, 2013-01-21 08:59:50

На сайте Drupal вы хотите вставить дополнительный javascript с помощью функции drupal_add_js внутри функции THEME_preprocess_html в template.php файл. Это позволит вам правильно кэшировать свой сайт. В частности, вот как это будет выглядеть:

<?php
    function THEME_preprocess_html(&$variables) {

      $ga  = "var _gaq = _gaq || [];\n";
      $ga .= "_gaq.push(['_setAccount', 'UA-XXXXXXX-X']);\n";
      $ga .= "_gaq.push(['_setDomainName', 'example.com']);\n";
      $ga .= "_gaq.push(['_trackPageview']);\n";
      $ga .= "(function() {\n";
      $ga .= "  var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\n";
      $ga .= "  ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\n";
      $ga .= "  var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\n";
      $ga .= "})();\n";

      drupal_add_js($ga, array('type' => 'inline', 'scope' => 'header'));
    }
?>

Обязательно замените идентификатор UA и название веб-сайта на свое собственное. Кроме того, не забудьте переименовать ТЕМУ в свою тему и очистить кэш по завершении.

 7
Author: Eric Constantinides, 2015-03-24 17:50:19