Перейти к содержимому

Sitecore OMS — как отслеживать скачивания файлов

В CMS Sitecore есть система онлайн маркетинга и анализа поведения пользователей на сайте под название OMS...

В есть система онлайн маркетинга и анализа поведения пользователей на сайте под название , в которой, в частности, есть возможность отслеживать скачивания файлов пользователями. К сожалению, по умолчанию,  в силу разных причин отслеживание скачиваний файлов не работает. Как его включить - читайте далее...
Итак, рецепт довольно таки прост, хоть и не очевиден.

Каждый логический элемент в Sitecore опирается на темплейт, который, собственно и описывает поведение искомого логического элемента. У темплейта можно задать дополнительный элемент под названием , который будет содержать в себе некие общие значения, характерные для данного типа элементов.

В Sitecore OMS есть функция отслеживания количества скачиваний, которая является достижимой целью для пользователя. Цель считается выполненной в том случае, если выполнено действие, ассоциированное с ней. То есть, для того, чтобы отслеживать скачивание некоего файла - его необходимо ассоциировать с этой целью при помощи вкладки Analyze в Sitecore'a выбрать Attributes, вкладку Events, и отметить Download (там есть множество достижимых целей, но на данный момент я описываю лишь эту).

Как Вы понимаете, назначать вручную эту цель на каждй файл, скачивание которого мы хотим отследить - задача небладарная, да и не нужная. Тут нам помогут Standard Values темплейта, на которую можно и навесить эту цель. Создать Standard Values для темлейта можно следующим образом: выбрать в дереве нужный темплейт, в риббоне Builder Options, Standard Values.

Однако, есть еще один подводный камень: начиная с Sitecore 6.2 Update-2 был представлен фикс, позволяющий использовать ASP. и IIS кеш для медиафайлов, что имеет несомненное преимущество для высоконагруженных систем, однако имеет два минуса:

  • медиафайлы не обновляются во время публикации новой версии (лишь только IIS Recycle заставит их обновить)
  • OMS не отслеживает скачивания файлов, даже если цель определена для файлов

Решение этой проблема в изменении значения параметра "MediaResponse.Cacheability" в web.config на "Private", что позволит отключить IIS кеш, в то время как внутренний медиа кеш Sitecore'а и веб клиента продолжат работать.