Você pode ocultar ou exibir métodos de checkout para clientes com base em suas etiquetas.
Requisitos
Os clientes devem ter etiquetas adicionadas na Shopify.
Verifique o guia Criar e usar etiquetas na Shopify para mais informações.
Você deve estar usando a versão 1 ou 2 do widget Zapiet - Entrega e Recolhas.
Se você estiver em uma versão antiga, entre em contato conosco pelo chat e teremos o prazer de instalar a atualização para você! Qual versão do widget estou usando?
Habilitar recolha por etiqueta de cliente
No Zapiet - Entrega e Recolhas, clique em Configurações, depois clique em Desenvolvedores.
Em Scripts personalizados, adicione o código abaixo.
Você pode modificar o código com base nas necessidades da sua loja. Este código de exemplo ocultará a recolha para todos os clientes, a menos que o cliente esteja logado e tenha a etiqueta "Recolha Permitida".
function customerHasTag(tag) {
if (
!ZapietCachedSettings.customer ||
!ZapietCachedSettings.customer.tags
) {
return false;
}
var tags = ZapietCachedSettings.customer.tags;
for (var i = 0; i < tags.length; i++) {
if (tags[i] == tag) {
return true;
}
}
return false;
}
if (customerHasTag("Pickup Allowed")) {
Zapiet.show("pickup");
} else {
Zapiet.hide("pickup");
}Você pode ocultar ou mostrar múltiplos métodos adicionando os métodos em um array.
No código de exemplo, se um cliente tiver a etiqueta “Apenas Recolha”, então tanto a entrega quanto o envio serão ocultados, mas se ele tiver a etiqueta “Apenas Envio”, então apenas o envio será mostrado.
if (customerHasTag("Pickup Only")) {
Zapiet.show("pickup");
Zapiet.hide(["delivery", "shipping"]);
}
else if (customerHasTag("Shipping Only")) {
Zapiet.show("Shipping");
Zapiet.hide(["pickup", "delivery"]);
}Clique em Salvar.
A recolha agora estará oculta por padrão para todos os clientes, a menos que o cliente esteja logado e tenha a etiqueta "Recolha Permitida".
Habilitar entrega por etiqueta de cliente
Dentro do Zapiet - Entrega e Recolhas, clique em Configurações, depois clique em Desenvolvedores.
Em Scripts personalizados, adicione o código abaixo.
Você pode modificar o código com base nas necessidades da sua loja. Este código de exemplo ocultará a entrega para todos os clientes, a menos que o cliente esteja logado e tenha a etiqueta "Entrega Permitida".
function customerHasTag(tag) {
if (
!ZapietCachedSettings.customer ||
!ZapietCachedSettings.customer.tags
) {
return false;
}
var tags = ZapietCachedSettings.customer.tags;
for (var i = 0; i < tags.length; i++) {
if (tags[i] == tag) {
return true;
}
}
return false;
}
if (customerHasTag("Delivery Allowed")) {
Zapiet.show("delivery");
} else {
Zapiet.hide("delivery");
}Você pode ocultar ou mostrar múltiplos métodos adicionando os métodos em um array.
No código de exemplo, se um cliente tiver a etiqueta "Apenas Entrega", então tanto a recolha quanto o envio serão ocultados, mas se ele tiver a etiqueta "Apenas Recolha", então apenas a recolha será mostrada.
if (customerHasTag("Delivery Only")) {
Zapiet.show("delivery ");
Zapiet.hide(["shipping", "pickup"]);
}
else if (customerHasTag("Pickup Only")) {
Zapiet.show("pickup");
Zapiet.hide(["shipping", "delivery"]);
}
Clique em Salvar.
A entrega agora estará oculta por padrão para todos os clientes, a menos que o cliente esteja logado e tenha a etiqueta "Entrega Permitida".
Habilitar envio por etiqueta de cliente
No Zapiet - Entrega e Recolhas, clique em Configurações, depois clique em Desenvolvedores.
Em Scripts personalizados, adicione o código abaixo.
Você pode modificar o código com base nas necessidades da sua loja. Este código de exemplo ocultará o envio para todos os clientes, a menos que o cliente esteja logado e tenha a etiqueta "Envio Permitido".
function customerHasTag(tag) {
if (
!ZapietCachedSettings.customer ||
!ZapietCachedSettings.customer.tags
) {
return false;
}
var tags = ZapietCachedSettings.customer.tags;
for (var i = 0; i < tags.length; i++) {
if (tags[i] == tag) {
return true;
}
}
return false;
}
if (customerHasTag("Shipping Allowed")) {
Zapiet.show("shipping");
} else {
Zapiet.hide("shipping");
}Você pode ocultar ou mostrar múltiplos métodos adicionando os métodos em um array.
No código de exemplo, se um cliente tiver a etiqueta "Apenas Envio", então tanto a entrega quanto a recolha serão ocultados, mas se ele tiver a etiqueta "Apenas Recolha", então apenas a recolha será mostrada.
if (customerHasTag("Shipping Only")) {
Zapiet.show("shipping");
Zapiet.hide(["delivery", "pickup"]);
}
else if (customerHasTag("Pickup Only")) {
Zapiet.show("pickup");
Zapiet.hide(["shipping", "delivery"]);
}Clique em Salvar.
O envio agora estará oculto por padrão para todos os clientes, a menos que o cliente esteja logado e tenha a etiqueta "Envio Permitido
Se você tiver algum problema ao implementar o código, entre em contato conosco pelo chat e teremos o prazer de ajudar!