PS PrestaShop Intermédio

DataFirefly Dealer Locator: modo catálogo e mapa de revendedores

Instalação, modo catálogo, botão Onde comprar, diretório e mapa, gestão dos revendedores, importação CSV, pedidos de contacto, área de revendedor e resolução de problemas.

Atualizado Versão do módulo 1.2.1

Este módulo transforma uma loja PrestaShop 8 ou 9 numa montra de marca: desativa a venda online em todo ou parte do catálogo, adiciona um botão Onde comprar nas páginas de produto e publica um diretório de revendedores com mapa, horários, formulário de contacto e uma página por revendedor.

Instalação

  1. Em Módulos > Gestor de módulos, clique em Carregar um módulo e envie o ficheiro ZIP.
  2. O módulo cria o menu Vender > Rede de revendedores com três entradas: Revendedores, Pedidos de contacto e Configurações.
  3. A página do diretório é criada automaticamente com um URL traduzido por língua: /onde-comprar, /where-to-buy, /ou-acheter, /donde-comprar, etc.

Para atualizar, basta carregar o novo ZIP: os scripts de atualização adicionam as colunas e os hooks em falta. Se o diretório ou as páginas de revendedor devolverem um erro 404, guarde uma vez Parâmetros da loja > Tráfego e SEO para regenerar o ficheiro .htaccess.

Compatibilidade: PrestaShop 8.0 a 9.x, multiloja, sem dependências Composer. Traduções incluídas em inglês, francês, espanhol, alemão, italiano, neerlandês, polaco e português.

Abra Rede de revendedores > Configurações, bloco Modo catálogo. O modo catálogo é aplicado em tempo real: a definição nativa do PrestaShop nunca é alterada, e tudo volta ao normal se desativar o módulo.

Venda online

  • Ativada: o modo catálogo está desligado, o módulo funciona apenas como diretório.
  • Desativada para todo o catálogo: nenhum produto pode ser adicionado ao carrinho.
  • Desativada apenas para a seleção: só as categorias, marcas e produtos escolhidos abaixo passam a modo catálogo.
  • Desativada para tudo exceto a seleção: a seleção continua à venda online, o resto passa a modo catálogo.

Preços, mensagem e carrinho

  • Ocultar preços: desativado, os preços continuam visíveis. Pode então mostrar uma etiqueta sob o preço, por defeito Preço de venda recomendado.
  • Mensagem na página do produto: texto mostrado acima do botão, por exemplo Este produto é vendido exclusivamente na nossa rede de revendedores autorizados. Deixe vazio para ocultar.
  • Redirecionar o carrinho e a encomenda para o diretório de revendedores: em modo catálogo completo, as páginas de carrinho e encomenda enviam para o diretório.

O carrinho é bloqueado no servidor: uma adição forçada através de um URL é recusada.

Grupos de clientes isentos

Assinale os grupos que continuam a poder encomendar online. Exemplo: um grupo Revendedores que encomenda o stock no site enquanto o público só vê o catálogo.

O botão Onde comprar

Bloco Botão Onde comprar das configurações:

  • Produtos abrangidos: apenas os produtos que não podem ser comprados online, ou todos os produtos.
  • Texto do botão, traduzível.
  • Ao clicar: abrir uma janela com o mapa e os revendedores do produto, ou ir para o diretório filtrado pelo produto.
  • Mostrar a disponibilidade sob o botão: Disponível em 14 revendedores e, depois, o revendedor mais próximo logo que o visitante já tenha feito uma pesquisa localizada.
  • Listar os revendedores online: os revendedores do tipo Revendedor online aparecem à parte, com um botão para o produto na loja deles.

O botão só lista os revendedores que vendem o produto (separador Produtos vendidos de cada revendedor). A janela abre na última cidade pesquisada pelo visitante.

Diretório e mapa

Bloco Diretório de revendedores e mapa:

  • Texto de introdução acima da pesquisa e cor de destaque dos botões, marcadores e agrupamentos.
  • Centro e zoom por defeito do mapa, unidade (km ou milhas), opções de raio, raio por defeito (0 = sem limite) e número máximo de resultados.
  • Estilo do mapa: CARTO Voyager, CARTO Positron, OpenStreetMap ou servidor de mosaicos próprio (URL https com {z}, {x} e {y}).
  • Perguntar antes de carregar o mapa: pelo RGPD, o servidor de mosaicos só recebe o IP do visitante após um clique.
  • Agrupar marcadores próximos e uma cor de marcador por tipo, com legenda no mapa.
  • Lista completa de revendedores por país sob o mapa, legível pelos motores de pesquisa.
  • Uma página por revendedor: ver mais abaixo.

O visitante pesquisa por cidade ou código postal, ou usa a sua localização. Pode filtrar por tipo de revendedor e assinalar Aberto agora. No telemóvel, um botão alterna entre a lista e o mapa. O mapa Leaflet está alojado no módulo: não é necessária nenhuma chave API.

Geocodificação

A geocodificação transforma uma morada ou uma cidade em coordenadas. Os resultados ficam em cache na base de dados.

  • OpenStreetMap Nominatim: gratuito, limitado a um pedido por segundo. Preencha o email de contacto, recomendado pela política de utilização do Nominatim.
  • Google Geocoding API: exige uma chave API Google.
  • Limitar as pesquisas a estes países: códigos ISO separados por vírgulas, por exemplo pt,es,br.

Gerir os revendedores

Menu Rede de revendedores > Revendedores. A ficha de um revendedor tem quatro separadores.

Geral

  • Nome, tipo (loja, distribuidor, showroom, centro de assistência, revendedor online), logótipo (JPG, PNG, WebP ou GIF, 2 MB no máximo).
  • Parceiro: selo Parceiro oficial, mostrado primeiro quando nenhuma localização é indicada.
  • Telefone, site e email: o email recebe os pedidos de contacto e nunca é mostrado quando o formulário de contacto está ativo.
  • Ligação para o produto na loja do revendedor: opcional, adiciona um botão Comprar online. Etiquetas disponíveis: {reference} {ean13} {upc} {mpn} {name} {id_product}. Exemplo: https://shop.example.com/search?q={ean13}
  • Acesso à área de revendedor: email de uma conta de cliente existente (ver Área de revendedor).

Morada e mapa

O revendedor é colocado no mapa automaticamente ao guardar. O botão Encontrar a posição a partir da morada volta a lançar a geocodificação, e pode clicar no mapa ou arrastar o marcador para ajustar a posição.

Descrição e horário

Descrição multilíngue, grelha de horários em 7 dias com dois períodos por dia (o segundo serve para a pausa de almoço), botões para copiar a segunda-feira para os outros dias e campo Bom saber para feriados ou encerramentos sazonais. Um dia vazio significa fechado. Os horários alimentam o selo e o filtro Aberto agora, calculados no fuso horário da loja.

Produtos vendidos

Escolha Toda a gama ou uma seleção de categorias, marcas e produtos. Só os revendedores que vendem um produto aparecem no respetivo botão Onde comprar.

Importação e exportação CSV

Botão Importar CSV da lista de revendedores. Formato: UTF-8, separado por ponto e vírgula, primeira linha com os nomes das colunas. O mais simples é exportar primeiro os seus revendedores para obter um ficheiro pronto a usar.

Colunas: id;name;type;active;featured;address1;address2;postcode;city;country_iso;phone;email;website;product_url;latitude;longitude;scope;categories;manufacturers;products;description;hours;opening

  • Apenas name é obrigatório. Deixe id vazio para criar um revendedor, ou assinale a atualização dos revendedores existentes.
  • type: retailer, distributor, showroom, service ou online. country_iso: código de duas letras.
  • scope: 0 para toda a gama, 1 para as categorias, marcas e produtos indicados, separados por uma barra vertical: 3|8|12.
  • opening: número do dia (1 = segunda-feira) e depois os horários, dias separados por uma barra: 1=09:00-12:00,14:00-19:00/2=09:00-19:00/6=10:00-18:00

Depois de uma importação sem coordenadas, clique em Colocar no mapa os revendedores importados: a geocodificação é feita em lote, a um endereço por segundo. Mantenha a página aberta durante a operação.

Pedidos de contacto

Bloco Pedidos de contacto das configurações: ative o formulário em cada revendedor, o envio por email ao revendedor, uma cópia para o seu endereço, o texto da caixa de consentimento e a página da política de privacidade.

O formulário está protegido contra spam (campo armadilha, tempo mínimo, cinco envios por hora e por endereço IP). Os pedidos aparecem em Rede de revendedores > Pedidos de contacto, com filtros, vista detalhada, estado tratado ou por tratar e exportação CSV.

Área de revendedor

Ative Área de revendedor na conta de cliente e depois introduza na ficha de um revendedor o email de uma conta de cliente existente. Depois de iniciar sessão, esse cliente vê um bloco Área de revendedor em A minha conta. Pode:

  • alterar o telefone, o site, os horários, o campo Bom saber e a descrição na sua língua;
  • ler os pedidos de contacto e marcá-los como tratados;
  • ver as estatísticas dos últimos 30 dias: visitas ao site, cliques no telefone, direções, pedidos.

A morada e a posição no mapa continuam geridas pela marca. Uma mesma conta pode gerir vários revendedores.

Páginas de revendedor e SEO

Com a opção Uma página por revendedor, cada revendedor (exceto os revendedores online) tem uma página do tipo /onde-comprar/12/lumiere-co-lyon: morada, mapa, horários, descrição, formulário de contacto e revendedores próximos. As páginas incluem dados estruturados Store com horários schema.org e um URL canónico, e redirecionam com um 301 se o nome ou a cidade mudarem. São adicionadas automaticamente ao sitemap se o módulo Google Sitemap (gsitemap) estiver instalado.

Estatísticas

A página de configuração mostra a atividade dos últimos 30 dias: revendedores mais contactados com o detalhe dos cliques (site, telefone, direções, compra online, pedidos) e produtos com mais cliques em Onde comprar.

Integração no tema

O botão é mostrado automaticamente através do hook displayProductAdditionalInfo. Para o colocar noutro sítio, use o widget:

  • pesquisa de revendedores: {widget name='dfdealerlocator'}
  • botão Onde comprar de um produto: {widget name='dfdealerlocator' id_product=$product.id}

Resolução de problemas

O mapa fica cinzento

O servidor de mosaicos está provavelmente bloqueado por uma política de segurança (CSP) ou por uma firewall. Autorize o domínio do estilo escolhido (basemaps.cartocdn.com ou tile.openstreetmap.org) ou use um servidor próprio.

O botão Onde comprar não aparece

Verifique se o tema chama o hook displayProductAdditionalInfo na página do produto e se a definição Produtos abrangidos corresponde ao produto testado. Caso contrário, insira o widget no template do produto.

Uma morada não é encontrada

Preencha pelo menos a cidade ou o código postal e o país, e clique em Encontrar a posição a partir da morada. Se a morada continuar sem ser encontrada, coloque o marcador manualmente no mapa.

Erro 404 no diretório ou numa página de revendedor

Regenere o .htaccess guardando Tráfego e SEO e verifique se o URL amigável da página module-dfdealerlocator-directory está preenchido em cada língua.

Esta página foi útil?

Ainda com dúvidas? Contacte o suporte