Skip to content
PageBuilder
PageBuilder
Визуальный конструктор секций для MODX 3: черновик и публикация без перезаписи content ресурса
  • MODX 3
  • PHP 8.2
  • Vue 3
  1. Компоненты
  2. PageBuilder
  3. Вывод на сайте
  4. Сниппеты
  5. PageBuilderUtmUrl

Сниппет PageBuilderUtmUrl ​

Добавляет UTM-параметры из реестра панели управления к произвольному URL: ссылка получает метки текущего визита, query string в шаблоне собирать не нужно. Значения берутся из query string, $_SESSION['utm'] или default_value записи в pb_utm_params.

Где вызывать ​

Шаблон, chunk секции (через MODX), кнопки вне PageBuilder. Для полей url/button внутри секций удобнее {{utm:key}} в инспекторе.

Параметры ​

ПараметрПо умолчаниюОписание
urlпустоЦелевой URL. Пустой → пустой ответ
paramsпустоJSON с дополнительными query-параметрами. Ключи из params перекрывают реестр

Базовый вызов ​

modx
[[!PageBuilderUtmUrl?
  &url=`https://example.com/landing`
]]
fenom
{'!PageBuilderUtmUrl' | snippet : [
  'url' => 'https://example.com/landing'
]}

Дополнительные параметры в query ​

modx
[[!PageBuilderUtmUrl?
  &url=`/contacts/`
  &params=`{"utm_content":"hero-cta"}`
]]
fenom
{'!PageBuilderUtmUrl' | snippet : [
  'url' => '/contacts/',
  'params' => '{"utm_content":"hero-cta"}'
]}

Fenom: модификатор utm_query ​

Плагин pagebuilder регистрирует модификатор на событие pdoToolsOnFenomInit, которое вызывает pdoTools:

fenom
<a href="{$button.url|utm_query}">{$button.label}</a>

Второй аргумент модификатора — массив дополнительных query-параметров (перекрывают реестр, как &params= у сниппета):

fenom
<a href="{$button.url|utm_query:['utm_content' => 'hero-cta']}">{$button.label}</a>

Для URL из данных секции это эквивалент вызова сниппета.

Сессия UTM ​

Чтобы в ссылку попали метки первого захода, перед отрисовкой вызовите PageBuilderUtmSession или полагайтесь на плагин PageBuilder.

См. также ​