Короткие ссылки и UTM метки

События модуля

При установке модуля регистрируется обработчик события OnPageStart галвного модуля, для отслеживания перехода по коротким ссылкам и перенаправления на конечный адрес.

Модуль использует новое ядро битркиса, поэтому доступны стандратные обработчики классов для раоты с сущностями базы данных. Соответствено можно подписаться на события класов:

  • \Bxmaker\ShortLink\ManagerTable
  • \Bxmaker\ShortLink\StatTable

Важно: в коде события не пишется полное название класса, то есть вместо ManagerTable необходимо писать просто Manager.

События:

  • OnBeforeAdd
  • OnAfterAdd
  • OnBeforeDelete
  • OnAfterDelete
  • OnBeforeUpdate
  • OnAfterUpdate

AddEventHandler('bxmaker.shortlink', '\Bxmaker\ShortLink\Manager::OnBeforeAdd', 'bxmaker_shortlink_onBeforeAdd');


use \Bitrix\Main\Entity; /* стоку разместить в начале файла */

function bxmaker_shortlink_onBeforeAdd(Entity\Event $event)
{
    $result = new Entity\EventResult;
    $data = $event->getParameter("fields");

    if (isset($data['TAG']))
    {   
       /* редактирование значения поля тег перед сохранением */      
        $result->modifyFields(array('TAG' => '[PROG] ' . $data['TAG'] ));    
    }
    // $result->unsetFields(array('HASH'));
}