Как создать пользовательскую переменную

В этом руководстве рассказывается, как создать шаблон пользовательской переменной, которая преобразовывает массив значений в строку, разделенную запятыми.

  1. Чтобы создать свой первый шаблон переменной, выберите пункт "Шаблоны" в меню навигации слева и нажмите кнопку Создать в разделе Шаблоны переменных.

  2. На вкладке Информация задайте название и описание переменной.

    Название переменной будет видно пользователям, добавляющим ее через интерфейс Менеджера тегов.

    Описание переменной позволяет пояснить, для чего она используется. Оно может содержать не более 200 символов.

  3. Нажмите Обновить и проверьте шаблон.

    Справа от поля ввода находится окно для предварительного просмотра шаблона. Кнопка Обновить появляется в этом окне после каждого изменения, сделанного в редакторе. Чтобы посмотреть, как изменился тег, нажмите эту кнопку.

  4. Нажмите на вкладку Поля, чтобы добавить поля в шаблон переменной.

    На вкладке Поля можно создавать и изменять поля, которые будут включены в шаблон переменной. Это позволяет сохранять произвольную информацию, например идентификаторы аккаунтов. Вы можете использовать стандартные элементы формы, например текстовые поля, раскрывающиеся меню, переключатели и флажки.

  5. Нажмите Добавить поле и выберите вариант Простая таблица. Замените название по умолчанию (например, simpleTable1) на list. Нажмите кнопку Обновить в окне предварительного просмотра.

    Аналогичным образом создайте следующие поля: текстовое поле с названием array, два флажка с названиями use_array и sort, а также текстовое поле с названием delimiter. Для поля delimiter установите переключатель Значение по умолчанию во включенное положение, а в качестве значения по умолчанию укажите запятую (,).

  6. Перейдите на вкладку Код и введите изолированный код JavaScript в окне редактора:

    var input = data.array;
    
    if (!data.use_array) {
      input = [];
      for (var i = 0; i < data.list.length; i++) {
        input.push(data.list[i].values);
      }
    }
    
    if (data.sort) {
      input.sort();
    }
    
    return input.join(data.delimiter || ',');
    

    Логика этого кода очевидна, но есть несколько моментов, на которые следует обратить внимание.

    • Поля data.

      В коде используются некоторые поля глобальной переменной data. Переменная data содержит значения, которые вы настроили на предыдущем шаге. Поэтому вы можете обращаться к полям data.use_array, data.sort, data.list и data.delimiter.

    • Переменная delimiter принимает значение по умолчанию (","), если полю data.delimiter не задано другое значение. Значения по умолчанию рекомендуется задавать в случаях, когда это имеет практический смысл: например, избавляет пользователей от необходимости заполнять все поля, работая с шаблоном переменной.

  7. Нажмите Сохранить. Все обнаруженные разрешения будут загружены в Редактор шаблонов.

    С некоторыми API пользовательских шаблонов связаны разрешения, определяющие допустимость тех или иных действий. Когда вы добавляете API шаблона, например sendPixel, соответствующие разрешения отображаются на вкладке Разрешения в Менеджере тегов.

  8. На вкладке Предварительный просмотр шаблона добавьте значения в текстовые поля, где это необходимо, нажмите кнопку Выполнить код и проверьте результирующее значение переменной в окне Консоль.

    Если возникнут ошибки, они будут указаны в окне Консоль.

  9. Нажмите Сохранить и закройте Редактор шаблонов.

    Шаблон переменной готов к использованию.