- Это мод для случаев, когда не хочется редактировать шаблон для вставки кода счетчиков и информеров (Яндекс.Метрика, Google Analytics и др.).
- При наличии нескольких стилей, смене стилей, апгрейдах и т.п. действиях необходимость редактирования шаблонов вызывает неудобства.
- Вместо редактирования можно использовать hook system, оставляя шаблон "чистым".
Установка:
- Внести изменения в файл root/includes/hooks/hook_counters_and_informers.php, добавив в него коды информеров и счетчиков. При добавлении необходимо в кодах заменить все одинарные кавычки на последовательность символов \' (обратный слэш и одинарная кавычка). Например, такие изменения придется сделать для Yandex.Metrika Counter и Gogle Analytics.
Важно ! Замечание по используемым стилям:
- subsilver2 - DEBUG_OUTPUT заключается в квадратные скобки; при включении DEBUG в config.php и добавлении информера закрывающая скобка будет перенесена на следующую строку, после информеров;
- prosilver - информеры будут отображаться слева под информацией DEBUG_OUTPUT.
Поэтому информеры имеет смысл добавлять для prosilver.
Информеры следует добавлять между строками в файле hook_counters_and_informers.phpиКод: Выделить всё
<!-- Информеры -->Коды инфомеров рекомендуется отделять от основного содержимого, напримерКод: Выделить всё
<!-- /Информеры -->а также разделять пробелами, напримерКод: Выделить всё
<br /><br />Если информеры не требуются, удалите все строки между вышеуказанными.Код: Выделить всё
Счетчики следует добавлять между строками в файле hook_counters_and_informers.phpиКод: Выделить всё
<!-- Счетчики -->Код: Выделить всё
<!-- /Счетчики --> - Копировать файл root/includes/hooks/hook_counters_and_informers.php в папку includes/hooks/
- Если Вы не используете мобильный стиль, пропускаете этот пункт.
В мобильных стилях не определен DEBUG_OUTPUT, используемый модом. Ршение проблемы:
- проверить, определена ли в overall_footer.html DEBUG_OUTPUT
- если нет, то добавить строку(предпочтительно в блокКод: Выделить всё
<!-- IF DEBUG_OUTPUT -->{DEBUG_OUTPUT}<!-- ENDIF -->или для стиля Artodia послеКод: Выделить всё
<div class="copyright">Код: Выделить всё
Powered by <a href="http://www.phpbb.com/">phpBB</a> © phpBB Group. - Очистить кэш.
- Удалить файл includes/hooks/hook_counters_and_informers.php
- Очистить кэш.
Код: Выделить всё
// Добавляем информеры
$template->_rootref['DEBUG_OUTPUT'] .= '
<!-- Информеры -->
<br />
<!-- Yandex.Metrika informer -->
<a href="http://metrika.yandex.ru/stat/?id=xxxxxxxx&from=informer"
target="_blank" rel="nofollow"><img src="//bs.yandex.ru/informer/xxxxxxxx/x_x_xxxxxxxx_xxxxxxxx_x_pageviews"
style="width:88px; height:31px; border:0;" alt="Яндекс.Метрика" title="Яндекс.Метрика: данные за сегодня (просмотры, визиты и уникальные посетители)" onclick="try{Ya.Metrika.informer({i:this,id:xxxxxxxx,lang:\'ru\'});return false}catch(e){}"/></a>
<!-- /Yandex.Metrika informer -->
<!-- LiveInternet logo -->
<a href="http://www.liveinternet.ru/click" target="_blank"><img src="//counter.yadro.ru/logo?13.1" title="LiveInternet: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня" alt="" border="0" width="88" height="31"/></a>
<!-- /LiveInternet -->
<!-- /Информеры -->
';
Код: Выделить всё
// Добавляем коды счетчиков
$template->_rootref['DEBUG_OUTPUT'] .= '
<!-- Счетчики -->
<!-- Yandex.Metrika counter -->
<script type="text/javascript">
(function (d, w, c) {
(w[c] = w[c] || []).push(function() {
try {
w.yaCounterxxxxxxxx = new Ya.Metrika({id:xxxxxxxx,
clickmap:true,
trackLinks:true,
accurateTrackBounce:true});
} catch(e) { }
});
var n = d.getElementsByTagName("script")[0],
s = d.createElement("script"),
f = function () { n.parentNode.insertBefore(s, n); };
s.type = "text/javascript";
s.async = true;
s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js";
if (w.opera == "[object Opera]") {
d.addEventListener("DOMContentLoaded", f, false);
} else { f(); }
})(document, window, "yandex_metrika_callbacks");
</script>
<noscript><div><img src="//mc.yandex.ru/watch/xxxxxxxx" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->
<!-- GA counter -->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(["_setAccount", "UA-xxxxxxxx-x"]);
_gaq.push(["_trackPageview"]);
(function() {
var ga = document.createElement("script"); ga.type = "text/javascript"; ga.async = true;
ga.src = ("https:" == document.location.protocol ? "https://ssl" : "http://www") + ".google-analytics.com/ga.js";
var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<!-- /GA counter -->
<!-- LiveInternet counter -->
<script type="text/javascript"><!--
new Image().src = "//counter.yadro.ru/hit?r"+escape(document.referrer)+((typeof(screen)=="undefined")?"":";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";h"+escape(document.title.substring(0,80))+";"+Math.random();
//--></script>
<!-- /LiveInternet -->
<!-- /Счетчики -->
';

