Criar uma variável personalizada
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Neste guia, mostramos como criar um modelo de variável personalizada. Essa variável usa uma matriz de valores e retorna como uma string separada por vírgulas.
Para começar seu primeiro modelo de variável, clique em "Modelos" na navegação à esquerda e no botão Novo na seção Modelos de variável.
Na guia Informações, defina o nome e a descrição da variável.
O nome será apresentado aos usuários quando eles implementarem essa variável em toda a interface do usuário do Gerenciador de tags.
A descrição é exatamente o que parece, uma breve descrição (200 caracteres ou menos) do que a variável faz.
Clique em Atualizar para visualizar seu modelo.
À direita dos campos de entrada, há uma janela Visualização do modelo.
Sempre que acontece uma alteração no editor, o botão Atualizar é exibido. Clique nele para ver os resultados das suas mudanças na aparência da tag.
Clique em Campos para adicionar campos ao seu modelo de variável.
A guia Campos do Editor de modelos permite criar e editar campos no modelo de variável. Os campos são usados para inserir dados personalizados, como o ID de uma conta. Você pode adicionar os elementos de formulário padrão, como campos de texto, menus suspensos, botões de opção e caixas de seleção.
Clique em Adicionar campo e selecione Tabela simples. Substitua o nome padrão (como simpleTable1) por list. Em Visualização do modelo, clique em Atualizar.
Faça o mesmo em uma entrada de texto e chame-a de array. Além disso, nomeie duas caixas de seleção como use_array e sort, e uma entrada de texto como delimiter.
Atribua ao delimiter um valor padrão de ",". Basta clicar no ícone de engrenagem, ativar Valor padrão e preencher o novo campo de entrada "Valor padrão".
Clique na guia Código e insira o JavaScript no modo sandbox no editor:
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 || ',');
O código dessa variável é bastante simples, mas há pontos importantes para destacar:
Campos data
.
Há alguns campos que estão sendo acessados fora do data
global.
O campo data
inclui os valores que você configurou na etapa anterior.
É por isso que podemos acessar data.use_array
, data.sort
, data.list
e data.delimiter
.
delimiter
é definido como um valor padrão de ","
se data.delimiter
não for fornecido. Recomendamos definir valores padrão para um campo, se for relevante. Isso facilita a utilização do modelo de variável, já que os usuários não precisam preencher todos os campos para usar a variável.
Clique em Salvar para registrar seu progresso. Com isso, as permissões detectadas serão carregadas no Editor de modelos.
Algumas APIs de modelo têm permissões associadas que determinam o que elas podem fazer. Quando você usa uma API de modelo (como sendPixel
) no seu código, o Gerenciador de tags mostra as autorizações relevantes na guia Permissões.
Na guia Visualização do modelo, adicione alguns valores à entrada "values", clique em Executar código e confira o resultado da variável no console.
Se houver algum erro, ele vai aparecer na janela Console.
Clique em Salvar e feche o Editor de modelos.
O modelo de variável estará pronto para ser usado.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2023-10-27 UTC.
[null,null,["Última atualização 2023-10-27 UTC."],[[["\u003cp\u003eThis guide provides step-by-step instructions to create a custom variable template in Google Tag Manager.\u003c/p\u003e\n"],["\u003cp\u003eThis template transforms an array of values into a comma-separated string using JavaScript code within the template.\u003c/p\u003e\n"],["\u003cp\u003eThe template utilizes fields like 'list', 'array', 'use_array', 'sort', and 'delimiter' to customize its functionality.\u003c/p\u003e\n"],["\u003cp\u003eUsers can preview and test the template using the 'Template Preview' and 'Console' sections within the editor.\u003c/p\u003e\n"],["\u003cp\u003eOnce saved, the custom variable template is ready to be implemented within Google Tag Manager.\u003c/p\u003e\n"]]],["To create a variable template that returns a comma-delimited string from an array, start by creating a new template, defining its name and description in the *Info* tab. Then, in the *Fields* tab, add fields for a simple table (\"list\"), text input (\"array\"), checkboxes (\"use_array\", \"sort\"), and text input (\"delimiter\"). In the *Code* tab, enter sandboxed JavaScript to process these fields, joining the array with the specified delimiter, and save. Then preview the result and save the variable.\n"],null,["# Create a custom variable\n\nThis guide will walk you through how to create a custom variable template. When\nthis variable is used, it will take an array of values and return them as a\ncomma delimited string.\n\n1. To begin your first variable template, click Templates in the left\n navigation and click the *New* button under the *Variable Templates*\n section.\n\n2. In the *Info* tab, define the variable's *Name* and *Description*.\n\n **Name** is what will be presented to users when they go to implement this\n variable throughout the Tag Manager user interface.\n\n **Description** is just what it sounds like - a brief (200 characters or\n less) description of what this variable does.\n3. Click *Refresh* to preview your template.\n\n To the right of the field inputs, there is a *Template Preview* window.\n Every time a change is made in the editor, the **Refresh** button will\n appear. Click Refresh to see what your changes do to the appearance of your\n variable.\n4. Click *Fields* to add fields to your variable template.\n\n The Template Editor's **Fields** tab lets you create and edit fields in the\n variable template. Fields are used to enter custom data, such as an account\n ID. You can add the standard form elements like text fields, drop down\n menus, radio buttons, and checkboxes.\n5. Click *Add Field* and select *Simple table* . Replace the default name (e.g.\n *\"simpleTable1\"* ) with *\"list\"* . In the *Template Preview* , click *Refresh*.\n\n Repeat this step for a *Text Input* and call it *\"array\"* , two *Checkboxes*\n called \"*use_array* \" and *\"sort\"* , and a *Text Input* called *\"delimiter\"* .\n For *\"delimiter\"* , give it a default value of \",\" by clicking the gear icon,\n toggling *\"Default value\"* to on, and then filling in the new Default Value\n input field.\n6. Click the *Code* tab and enter sandboxed JavaScript in the editor:\n\n var input = data.array;\n\n if (!data.use_array) {\n input = [];\n for (var i = 0; i \u003c data.list.length; i++) {\n input.push(data.list[i].values);\n }\n }\n\n if (data.sort) {\n input.sort();\n }\n\n return input.join(data.delimiter || ',');\n\n The code for this variable is fairly straightforward, but there are a few\n things worth pointing out.\n - `data` fields.\n\n There are a few fields that are being accessed off of the `data` global.\n `data` will contain the values that you set up in the previous step.\n That's why we're able to access `data.use_array`, `data.sort`,\n `data.list`, and `data.delimiter`.\n - `delimiter` is set to a default value of `\",\"` if `data.delimiter` is\n not provided. It's a good practice to set default values for a field if\n one makes sense. This makes it easier for users to use the variable\n template, since they don't have to fill out every field in order to use\n the variable.\n\n7. Click *Save* to save your progress. This will load any detected permissions\n into the Template Editor.\n\n Some Template APIs have [permissions](/tag-platform/tag-manager/templates/permissions) associated with them that dictate what\n they can or cannot do. When you use a template API such as `sendPixel` in\n your code, Tag Manager will show relevant permissions in the **Permissions**\n tab.\n8. In the *Template Preview* tab, add some values for the \"values\" input, click\n **Run Code** , and look at the *Console* to see the output for your variable.\n\n If there are any errors, they will appear in the **Console** window.\n9. Click *Save*, and close the Template Editor\n\n The variable template should now be ready for use."]]