DataFirefly Advent Calendar: calendário do Advento para PrestaShop
Instalação, tarefa cron dos lembretes, criação do calendário e das janelas, códigos de desconto, sorteio, estatísticas e resolução de problemas.
Instalação
Instale o módulo em Módulos > Gestor de módulos > Carregar um módulo enviando o ficheiro ZIP, ou copie a pasta dfadventcalendar para o diretório /modules/ da loja e clique em Instalar.
A instalação cria as tabelas do módulo, regista os seus hooks e adiciona o separador Catálogo > Descontos > Calendário do Advento. As imagens carregadas para as janelas ficam em /img/dfadventcalendar/, fora da pasta do módulo, para sobreviverem a uma atualização.
Definições do módulo e tarefa cron
A página de configuração do módulo (botão Configurar no gestor de módulos) contém três definições e o URL cron.
Endereço da página
Última parte do URL do calendário, comum a todos os idiomas (o PrestaShop acrescenta o prefixo do idioma, por exemplo /en/). O valor por defeito depende do idioma principal da loja: /calendario-do-advento em português, /advent-calendar em inglês, /calendrier-de-l-avent em francês. Os URL amigáveis têm de estar ativos no PrestaShop.
Lembrete diário: tarefa cron
Os e-mails de lembrete são enviados por uma tarefa cron. Copie o URL apresentado e agende-o a cada 15 minutos no painel do seu alojamento, por exemplo:
*/15 * * * * curl -s "https://www.a-sua-loja.pt/module/dfadventcalendar/cron?token=O_SEU_TOKEN" > /dev/null
Em cada chamada, o módulo envia os lembretes do dia a partir da hora definida no calendário, por lotes (150 por defeito, ajustável em «Lembretes por execução do cron»). Cada participante recebe no máximo um lembrete por dia, e só se ainda não tiver aberto a janela do dia. A data da última execução aparece por baixo do URL; «Gerar um novo token cron» inutiliza o URL anterior.
O calendário funciona sem cron. Só os e-mails de lembrete dependem dele. O painel mostra um alerta se o cron não tiver corrido nas últimas 24 horas.
Criar um calendário
Abra Catálogo > Descontos > Calendário do Advento e clique em Novo calendário.
Datas e janelas
- Data da primeira janela: a janela 1 abre à meia-noite desse dia, no fuso horário da loja, e depois uma janela por dia.
- Número de janelas: 24 para um calendário clássico, 25 para incluir o dia de Natal, de 1 a 31.
- Permitir abrir janelas passadas: um participante que perdeu um dia pode recuperar a janela até ao fim do calendário.
Ao guardar, o módulo cria as janelas vazias. Ficam fechadas até as configurar e ativar.
Aspeto
Há cinco estilos: Floresta de abetos, Papel kraft, Geada, Noite de inverno e Bengala de açúcar. A opção Cores personalizadas ativa quatro cores (fundo, texto, janelas, destaque). Pode acrescentar uma imagem de fundo (JPG, PNG ou WebP, máx. 5 MB), neve a cair, janelas baralhadas e tamanhos variados.
Com tamanhos variados, o módulo decide quais as janelas largas ou grandes para que a grelha se preencha sem espaços vazios em 6, 4 ou 3 colunas consoante o ecrã. A última janela é sempre a maior.
Participação
- E-mail obrigatório para abrir as janelas: se desativado, os visitantes abrem livremente, mas os códigos pessoais continuam reservados aos inscritos.
- Confirmar o endereço de e-mail (duplo opt-in): o participante clica numa ligação recebida por e-mail antes de abrir as janelas. Recomendado contra endereços falsos.
- Caixa da newsletter: acrescenta uma caixa opcional, não assinalada. A subscrição passa pela newsletter nativa do cliente ou pelo módulo ps_emailsubscription, se estiver instalado.
- Texto de consentimento: mostrado junto à caixa obrigatória. Acrescente a ligação para a sua política de privacidade.
Lembretes
Ative o E-mail de lembrete diário e escolha a Hora do lembrete. O participante pode desativar os lembretes na página do calendário ou através da ligação presente em cada e-mail.
Banner na página inicial
O banner aparece na página inicial durante o calendário e, se quiser, alguns dias antes com contagem decrescente. Para o colocar noutro local do tema, acrescente {hook h='displayDfAdventCalendar'} num template.
Configurar as janelas
No painel do calendário, clique em Janelas e depois em Editar em cada janela.
Tipos de janela
- Mensagem: texto e imagem.
- Código de desconto: o código fica em destaque na janela de abertura.
- Produto revelado: cartão de produto com preço e botão de adicionar ao carrinho. Pesquise o produto por nome ou referência.
O campo Chamariz para o e-mail de lembrete é a frase enviada no lembrete do dia: desperte a curiosidade sem revelar a surpresa.
Recompensa
Desconto em percentagem, desconto em valor (com IVA, moeda predefinida), portes grátis ou produto oferecido, com valor mínimo de encomenda opcional. Numa janela de produto, a opção «Aplicar o desconto apenas ao produto revelado» limita o código a esse produto.
Tipo de código
- Código pessoal: é gerada uma regra de carrinho de utilização única quando o participante abre a janela. Fica associada à conta de cliente quando é conhecida, e é válida até à meia-noite do dia de abertura mais a validade adicional escolhida.
- O mesmo código para todos: uma única regra de carrinho por janela, criada e sincronizada pelo módulo. Deixe o campo vazio para obter um código automático (prefixo, ano e número da janela, por exemplo
ADVENT26-07) ou escreva o seu. A validade conta a partir da data da janela.
Sem tempo para configurar 24 janelas? No painel, Preencher as janelas vazias aplica um plano pronto a usar: 10 a 20 por cento de desconto e portes grátis alternados, 25 por cento na última janela, códigos pessoais válidos mais um dia. Os textos são escritos em todos os idiomas da loja. As janelas já configuradas não são alteradas.
Pré-visualizar antes do lançamento
O botão Pré-visualização do painel abre o calendário tal como estará num determinado dia, e o ícone do olho em cada linha abre diretamente a janela desse dia. Na pré-visualização, os códigos são exemplos e nada é guardado. A página não é indexada.
Mais > Enviar-me os e-mails de teste envia os três e-mails (lembrete, boas-vindas, confirmação) ao funcionário com sessão iniciada, no idioma dele.
O que o cliente vê
- Uma contagem decrescente até à próxima janela e, para os participantes, uma barra de progresso.
- A janela do dia em destaque. As janelas abrem em 3D, com confettis na primeira vez. As animações são desativadas para os visitantes que pedem menos movimento.
- Um botão Adicionar ao meu carrinho por baixo de cada código. Se o carrinho estiver vazio, o código fica guardado 14 dias e aplica-se com o primeiro produto adicionado.
- O resumo Os seus códigos por baixo da grelha, com a validade de cada código e o seu estado (utilizado, expirado).
- Um botão de partilha do calendário e uma ligação na conta de cliente.
Um participante já inscrito que volta a escrever o endereço recebe uma ligação de acesso por e-mail: o módulo nunca inicia sessão a alguém apenas com base num endereço escrito.
Sorteio final
Nas definições do calendário, o campo Sorteio final define o número mínimo de janelas abertas para participar (0 desativa o sorteio), e Prémio do sorteio final descreve o prémio mostrado no calendário.
O painel Sorteio final indica quantos participantes são elegíveis. Sortear um vencedor escolhe ao acaso entre os participantes confirmados elegíveis, excluindo os vencedores anteriores. Cada sorteio fica registado com o e-mail, as janelas abertas, o número de elegíveis e a data.
Um sorteio está sujeito às regras dos concursos publicitários. Publique um regulamento na loja antes do lançamento.
Painel e estatísticas
O painel mostra participantes, confirmados, lembretes ativos, subscrições da newsletter, encomendas feitas com um código e faturação sem IVA. Para cada janela: aberturas, encomendas e faturação. Os participantes exportam-se em CSV a partir da lista Participantes.
Mais > Duplicar para o ano seguinte copia o calendário com janelas, textos e imagens, avança a data um ano e deixa-o inativo, sem participantes nem códigos.
Se o Google Tag Manager estiver presente, o módulo envia estes eventos para o dataLayer: dfadv_join, dfadv_door_open, dfadv_code_copy, dfadv_code_apply e dfadv_share.
E-mails
São fornecidos três modelos em oito idiomas em mails/: dfadvent_reminder (lembrete), dfadvent_confirm (confirmação e ligação de acesso) e dfadvent_welcome (boas-vindas). Para os personalizar sem perder as alterações numa atualização, copie-os para themes/o-seu-tema/modules/dfadventcalendar/mails/.
Dados pessoais
- A caixa de consentimento é obrigatória; a da newsletter é separada e não assinalada.
- Cada e-mail de lembrete inclui uma ligação de cancelamento num clique.
- O endereço IP só é guardado em hash, para limitar as inscrições a 5 por hora e por ligação.
- O módulo responde aos pedidos de exportação e eliminação de dados pessoais do PrestaShop.
Resolução de problemas
Os lembretes não são enviados
Verifique a data da última execução do cron na configuração do módulo, se os lembretes estão ativos no calendário e se a hora do lembrete já passou. Só recebem o lembrete os participantes confirmados que ainda não abriram a janela do dia. Teste o envio com «Enviar-me os e-mails de teste».
A página do calendário devolve um erro 404
Verifique se os URL amigáveis estão ativos e limpe a cache do PrestaShop. Se o endereço coincidir com uma página CMS ou uma categoria, altere-o na configuração do módulo.
O código não é adicionado ao carrinho
A mensagem apresentada é a do PrestaShop: valor mínimo não atingido, código expirado ou código pessoal associado a uma conta de cliente sem sessão iniciada. Neste último caso, o código fica em espera e aplica-se ao carrinho seguinte depois de o cliente iniciar sessão.
Uma janela continua fechada no seu dia
As janelas abrem à meia-noite no fuso horário da loja (Internacional > Localização > Configuração). Verifique também se a janela está ativa: uma janela não configurada fica fechada.
Compatibilidade
- PrestaShop 8.0 a 9.x, o mesmo ZIP para as duas versões.
- Temas Classic, Hummingbird e temas filhos.
- Multiloja e multilíngue.
- Arquitetura ModuleAdminController, sem dependências Composer.
- Módulo traduzido em inglês, francês, espanhol, alemão, italiano, neerlandês, polaco e português.