Modo Manutenção e Brevemente: guia completo
Instalar e configurar a página de manutenção / brevemente: contagem decrescente, acesso de testadores por IP e token, soft launch por país, captação de e-mails e definições de SEO.
O Modo Manutenção e Brevemente (dfmaintenancepro) mostra uma página de espera desenhada aos visitantes não autorizados (contagem decrescente, captação de e-mails, acesso de testadores por IP ou token e soft launch por país) sem nunca ativar o modo de manutenção nativo do PrestaShop. A loja continua tecnicamente online: o back-office, os webhooks de pagamento e as tarefas agendadas continuam a funcionar normalmente.
Instalação
- No back-office, abra Módulos > Gestor de módulos > Instalar um módulo.
- Carregue o arquivo
dfmaintenancepro.zipe clique em Instalar. - Clique em Configurar para abrir o painel do módulo.
A instalação cria a tabela dfmp_subscriber (e-mails captados), regista o separador oculto « Subscribers » e gera automaticamente um token de acesso único. Não é instalado nenhum override: o módulo assenta unicamente no hook actionDispatcherBefore.
O módulo fica desativado por defeito depois da instalação: configure tranquilamente a sua página, pré-visualize-a e ative-a no momento pretendido.
Painel de informação
No topo da página de configuração, um painel resume o essencial:
- Estado: badge verde « ACTIVE » quando a página é servida aos visitantes, badge neutro caso contrário.
- URL de testador: a ligação
https://a-sua-loja.pt/?dfmp_token=XXXXa partilhar: coloca um cookie de acesso no navegador do testador. - Regenerar o token: invalida instantaneamente todos os cookies de acesso já concedidos.
- Pré-visualizar: mostra a página de manutenção mesmo com o módulo desativado (parâmetro
dfmp_preview). - E-mails captados: acesso direto à lista dos inscritos com o seu número.
Configuração geral
- Ativar a página de manutenção: o interruptor principal. Uma vez ativado, todos os visitantes não autorizados veem a página de espera.
- Modo: « Brevemente (pré-lançamento) » ou « Manutenção (indisponibilidade temporária) ». Esta escolha só muda o badge apresentado na página; o comportamento SEO regula-se na secção SEO.
- Data de lançamento: formato
AAAA-MM-DD HH:MM, fuso horário do servidor (Europe/Lisbon numa loja portuguesa; atenção à mudança de hora de verão). Alimenta a contagem decrescente e o cabeçalhoRetry-After. - Mostrar a contagem decrescente: o contador dias/horas/minutos/segundos oculta-se automaticamente assim que a data é atingida.
Acesso de teste (IP e token)
Lista branca de IP
Uma entrada por linha (ou separadas por vírgulas). São aceites três formatos:
- Endereços exatos IPv4 ou IPv6:
82.64.12.7 - Intervalos CIDR:
192.168.1.0/24ou2001:db8::/32 - Wildcards IPv4:
192.168.1.*
Ligação de testador com token
Partilhe o URL apresentado no painel de informação. Na abertura, é colocado um cookie assinado com HMAC SHA-256 no navegador do testador durante a duração configurada (72 horas por defeito): navega depois na loja real como se nada fosse. O campo Duração do cookie de acesso controla essa validade.
Uma ligação foi divulgada? Clique em « Regenerar o token »: o token muda e todos os cookies já colocados tornam-se inválidos imediatamente.
Webhooks de pagamento
A opção Autorizar os controladores front dos módulos (ativada por defeito) deixa passar todos os pedidos fc=module: os IPN e callbacks de pagamento (PayPal, Stripe, IfthenPay, Easypay, etc.) nunca são bloqueados, mesmo em plena manutenção.
Os colaboradores autenticados no back-office veem sempre a loja real, sem qualquer configuração: a sessão de administração basta.
Soft launch por país
Este modo transforma a página de espera numa ferramenta de lançamento progressivo:
- Ative o Soft launch.
- Preencha os códigos de país ISO 3166-1 alpha-2 autorizados, separados por vírgulas:
PT,ES,FR,BR. - Escolha o comportamento para um país indeterminado: mostrar a página de manutenção (por defeito, prudente) ou deixar entrar.
A deteção do país segue esta ordem:
- Cabeçalhos de geolocalização do CDN:
CF-IPCountry(Cloudflare),CloudFront-Viewer-Country(AWS),X-Vercel-IP-Country,X-Geoip-Country(nginx). - Base GeoLite2 do PrestaShop se a geolocalização estiver configurada em Parâmetros internacionais > Geolocalização.
Sem CDN nem base GeoLite2, o país não pode ser determinado: todos os visitantes seguem então a regra « país indeterminado ». Verifique a sua configuração antes de ativar um soft launch em produção.
Conteúdo e design
- Título, subtítulo, mensagem: traduzíveis idioma a idioma através das bandeiras; a mensagem aceita HTML simples.
- Logótipo: URL absoluto de uma imagem (PNG/SVG aconselhado). Vazio, aparece o nome da loja em texto.
- Cores: fundo, destaque (contagem decrescente, botão, badge) e texto, através dos seletores de cor.
- Redes sociais: Facebook, Instagram, X, LinkedIn, YouTube: preencha apenas as que quer mostrar, os ícones SVG estão integrados.
- CSS personalizado: injetado no fim dos estilos para ajustar tudo com precisão.
A página gerada é 100 % autónoma: CSS e JavaScript inline, nenhum tipo de letra nem script de terceiros, nenhum pedido externo. Respeita prefers-reduced-motion e adapta-se ao telemóvel.
Use o botão « Pré-visualizar a página de manutenção » a cada ajuste: funciona com o módulo desativado, pelo que desenha sem risco antes da ativação.
Captação de e-mails
- Ativar a captação: mostra o formulário sob a contagem decrescente.
- Placeholder, designação do botão, mensagem de sucesso, menção RGPD: todos traduzíveis por idioma.
O formulário funciona em AJAX com um campo honeypot invisível que neutraliza os bots. Cada inscrição regista o e-mail, o idioma, o país detetado, o IP e a data, com unicidade por endereço e por loja.
O e-mail, o IP e o país captados são dados pessoais: a menção RGPD deve indicar a finalidade (informar do lançamento), a identidade do responsável pelo tratamento e a forma de retirar o consentimento. Em Portugal, a prospeção por e-mail a particulares exige um consentimento prévio (opt-in) nos termos da Lei n.º 41/2004, sob a alçada da CNPD: esta inscrição vale como consentimento apenas para o que estiver escrito na menção.
Lista dos inscritos e exportação CSV
A partir do painel de informação, abra E-mails captados: a lista filtra-se por coluna, ordena-se, limpa-se em massa e exporta-se em CSV através do botão Exportar CSV, pronta a importar na sua ferramenta de e-mail marketing no dia do lançamento.
SEO
- Código HTTP 503 (recomendado): assinala ao Google uma indisponibilidade temporária. O cabeçalho
Retry-Afteré calculado com base no tempo restante até à data de lançamento (limitado a 7 dias); sem data futura, é usado o valor do campo Retry-After. - Código HTTP 200: para uma página « brevemente » duradoura e indexável.
Em todos os casos, a página envia uma etiqueta noindex, nofollow e cabeçalhos no-cache: o seu catálogo continua indexado, a página de espera não.
Funcionamento técnico
A cada pedido do front-office, o módulo avalia as autorizações por esta ordem e deixa passar no primeiro sucesso:
- Colaborador autenticado no back-office (cookie
psAdmin). - Parâmetro
dfmp_tokenválido no URL (coloca o cookie de acesso). - Cookie de acesso assinado ainda válido.
- IP presente na lista branca.
- País autorizado se o soft launch estiver ativo.
Caso contrário, a página de manutenção é renderizada e a execução para antes do controlador front. Multiloja: a configuração e a lista de inscritos são próprias de cada loja.
Resolução de problemas
- Continuo a ver a loja apesar de o módulo estar ativo: está provavelmente autenticado no back-office no mesmo navegador, ou um cookie de acesso ainda está válido. Teste em navegação privada.
- Um testador vê a página de manutenção apesar da ligação com token: o token pode ter sido regenerado desde o envio da ligação; reenvie o URL apresentado no painel de informação.
- O soft launch bloqueia toda a gente: nenhum cabeçalho de CDN nem base GeoLite2 disponível: o país é indeterminado e a regra por defeito bloqueia. Passe « País desconhecido » para « Autorizar » ou configure a geolocalização.
- A contagem decrescente não aparece: verifique que a data de lançamento está no formato
AAAA-MM-DD HH:MMe situada no futuro. - Desinstalação: elimina a tabela dos inscritos: exporte o CSV antes se quiser conservar os endereços.