Я пытаюсь получить отслеживание на месте и задавался вопросом, каким будет лучшее место для добавления JS-кода. Также нужно удостовериться, что это не будет уменьшено?Лучшее место для добавления аналитики в ApostropheCMS
0
A
ответ
2
Я предлагаю расширить внешний интерфейсLayout.html в lib/modules/apostrophe-templates/views/outerLayout.html
. В этом шаблоне, вы можете изменить extraHead
блок следующим образом:
{% extends "outerLayoutBase.html" %}
{% block extraHead %}
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', '...']);
_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>
{% endblock %}
Это блок, где я обычно положить вещи, как определения Favicon, Open Graph мета-теги, удаленной загрузки шрифтов, и все, что хороший материал.
0
FYI - может быть хорошей идеей сделать идентификатор аналитики (и т. Д.) В качестве глобального, чтобы ваш пользователь мог установить его сам. Обратите внимание, что это немного повлияет на производительность, поскольку она будет запрашиваться для каждой страницы, но она может быть действительно полезна. И не забудьте обернуть скрипт в {% if data.global.analyticsID %}
!
похоже, что это работает для меня. Было бы неплохо увидеть JS-код в конце страницы, а не в начале. –
Конец страницы очень просто. Взгляните на блоки в 'outerLayoutBase', которые вы можете переопределить, особенно' afterMain' и 'extraBody'. –