Share

Contador de Visitantes e Estatísticas - Visitantes Online, Gráficos por País e Rodapé para PrestaShop

Price: 49,99 €
Sem IVA

Mostre aos seus visitantes o movimento que a loja tem. Um bloco compacto no rodapé ou numa coluna lateral apresenta quem está online agora, ontem, hoje e os totais acumulados, com gráficos em anel por país e continente. Os dados dos gráficos são pré-agregados e os contadores ficam em cache, por isso o bloco mantém-se rápido numa loja grande, e o módulo não guarda endereços IP de visitantes. A geolocalização funciona offline, a partir de uma base de dados incluída. Oito idiomas. PrestaShop 1.7 a 9.

Partilhar
Compatible with:
PS 1.7 PS 8 PS 9
Available in:
Dutch Dutch English English French French German German Italian Italian Polish Polish Spanish Spanish Turkish Turkish
Downloaded 102 times by customers like you

Prova social que já é sua

Uma loja com movimento converte melhor do que uma loja que parece vazia. Os dados já lhe pertencem — o PrestaShop regista todas as visitas desde o dia em que o instalou — mas ficam no back-office, onde nenhum cliente alguma vez os verá.

Este módulo leva-os para a loja: um pequeno bloco com os números que interessam e dois gráficos que mostram de onde vêm os seus clientes.

Cinco números, no rodapé ou numa coluna

O bloco mostra quem está online agora, ontem, hoje, total de visitantes e total de visitas.

"Online" significa visitas que começaram nos últimos 30 minutos — a forma habitual de medir isto, e vale a pena saber para que o número não o apanhe de surpresa. O "total de visitantes" conta endereços IP distintos; o "total de visitas" conta todas as visitas. São diferentes de propósito, e mostrar os dois conta uma história melhor do que qualquer um deles isolado.

Um ajuste histórico permite somar aos dois totais o tráfego que já tinha antes de instalar, para que uma loja com cinco anos de história não comece do zero.

Onde fica o bloco é escolha sua

Três interruptores na página de configuração: rodapé, coluna esquerda, coluna direita. Só o rodapé está ativo por predefinição.

Não são filtros de exibição. Ativar um regista o hook; desativá-lo anula esse registo, por isso o bloco é apresentado exatamente onde o pediu e em nenhuma outra posição. O layout de rodapé e o layout de coluna são modelos separados, cada um pensado para o espaço que ocupa.

Uma coisa a saber antes de o mudar de sítio: os dois gráficos vivem com o bloco de rodapé. Se desativar o rodapé e usar apenas uma coluna, os contadores funcionam exatamente como aqui se descreve, mas os botões Países e Continentes não têm nada para abrir. Deixe o rodapé ativo se quiser os gráficos, e use as colunas em complemento e não em substituição.

Comporta-se em temas modernos, não só no Classic

A maioria dos blocos de rodapé foi escrita para o tema Classic e desfaz-se em qualquer outro. Este foi corrigido contra temas reais ao longo de quatro versões.

No Hummingbird e noutros temas de PrestaShop 8 e 9, o bloco encontra as colunas do rodapé do próprio tema — PRODUCTS, COMPANY, ACCOUNT, STORE — e junta-se a essa linha como mais uma coluna de largura igual, em vez de passar para baixo dela. Herda a cor de texto do rodapé em vez de fixar um tom escuro, por isso mantém-se legível num rodapé escuro. As classes responsivas funcionam em Bootstrap 5 tal como em Bootstrap 4, pelo que o título não é apresentado duas vezes e o acordeão em ecrãs pequenos abre e fecha corretamente em qualquer um deles. O Classic, que é o tema para o qual a maioria destes blocos foi feita, fica deliberadamente intocado por tudo isto.

Uma aresta que vale mais nomear do que deixar que a descubra sozinho: os pequenos ícones do bloco vêm do Material Icons, uma fonte que o Classic carrega e o Hummingbird não. Numa loja com Hummingbird, os dois botões dos gráficos mostram os nomes dos respetivos ícones em texto, a pequena seta para cima ou para baixo ao lado do número de hoje faz o mesmo, e os símbolos de abrir e fechar do acordeão em ecrãs pequenos não chegam sequer a ser desenhados. Os números, os gráficos e o layout não são afetados. Acrescentar a fonte ao seu tema, ou trocar esses ícones pelos do próprio tema, resolve a questão.

Dois gráficos, e de onde vêm

Botões abrem gráficos em anel por país e por continente — os 20 principais países mais um agregado «Outros», e os continentes num único gráfico. Uma fatia é a soma das suas contagens diárias de visitantes únicos para esse local, pelo que se lê como quota relativa e não como uma contagem única de visitantes sem repetições.

A biblioteca de gráficos é carregada apenas quando alguém abre mesmo um gráfico. Em qualquer outra visualização de página nunca chega a ser pedida. Note que é obtida de um CDN público em vez de vir incluída no módulo, o que importa se aplicar uma política de segurança de conteúdo (CSP) restritiva.

Rápido porque o trabalho pesado não se repete a cada visitante

A forma ingénua de construir isto é contar tudo a cada carregamento de página. Numa loja com uma tabela de ligações grande, isso é uma consulta lenta precisamente nas páginas com mais movimento.

Duas coisas evitam-no aqui. Os gráficos são pré-agregados: uma marca de água regista até onde o módulo já leu o registo de ligações, cada execução recomeça onde a anterior parou e as linhas novas são somadas a totais diários por país e por continente. Desenhar um gráfico lê essas pequenas linhas diárias, nunca o registo em si.

Os cinco KPI são contados a partir do registo de ligações, porque um total corrente de visitantes distintos não se consegue construir a partir de resumos diários sem ir acumulando desvios. O que impede que isso saia caro é o resultado ser escrito numa tabela de cache e recalculado no máximo uma vez por minuto, por mais gente que esteja no site. Paga essa contagem uma vez por minuto, e não uma vez por cada página vista.

Um endpoint de cron, e uma loja que se desenrasca sem ele

A página de configuração dá-lhe um URL de cron protegido por um token de 32 caracteres. Agende-o de hora a hora e a agregação passa a acontecer inteiramente em segundo plano, até 20 000 ligações por execução.

Se nunca o configurar, o bloco continua a funcionar: um pedido da loja processa um lote de até 1000 ligações sempre que a cache dos KPI expira, por isso uma loja com tráfego regular vai-se mantendo mais ou menos em dia sozinha. A razão para agendar o cron é onde o trabalho acontece — em segundo plano, e não dentro do carregamento de página de um cliente — e o facto de continuar a correr sem depender de alguém estar a visitar a loja. Uma loja com pouco movimento e muito atraso acumulado põe-se em dia bastante mais depressa com o cron do que sem ele.

Geolocalização que corre no seu próprio servidor

As consultas de país correm inteiramente no seu próprio servidor, contra uma base de dados de intervalos de IP incluída no módulo, com 188 686 intervalos, importada para uma tabela indexada.

Resolver um IP é uma única consulta indexada, e não uma varredura — o módulo usa o padrão habitual de pesquisa por intervalo, com chave primária no fim do intervalo. Não há API de geolocalização, não há quota por consulta, não há serviço de terceiros que possa ficar em baixo ou começar a cobrar, e nenhum IP de visitante é enviado seja para onde for para enriquecimento.

Um limite a conhecer à partida: a base de intervalos é IPv4. Os visitantes que chegam por IPv6 são contados em todos os KPI, mas não podem ser atribuídos a um país e aparecem nos gráficos como "Unknown".

A posição sobre privacidade, dita sem rodeios

As tabelas do próprio módulo não registam endereços IP de visitantes. Nem em hash, nem truncados — simplesmente não existem. As quatro tabelas que cria para estatísticas não têm coluna para isso.

Os IP dos visitantes são lidos da tabela de ligações que o PrestaShop já mantém, ficam em memória apenas o tempo necessário para calcular uma contagem de distintos e um país, e são descartados. O que fica escrito é uma contagem por país e por dia. A única tabela que contém números de IP é a base de referência importada, com intervalos de endereços — dados públicos sobre a Internet, não sobre quem o visitou. Mostrar ao visitante o seu próprio endereço IP no bloco é uma definição, e está desativada por predefinição.

Duas coisas que é melhor saber já do que descobrir depois. A definição de retenção é um número documentado, não uma limpeza automática — nada é apagado por si, e deve limpar a tabela de ligações com as ferramentas do próprio PrestaShop.

E a bandeira do país que aparece ao lado da localização do visitante é uma imagem obtida de um CDN público de bandeiras. O PrestaShop só inclui ficheiros de bandeira locais para os idiomas que tiver instalados, por isso, na maioria dos países, o navegador acaba mesmo por recorrer a esse CDN — e fá-lo quer tenha ativado a apresentação do IP, quer não. É um pequeno pedido de imagem a terceiros, não um fluxo de dados, mas, se estiver a redigir um aviso de cookies e de privacidade, deve listá-lo em vez de partir do princípio de que é raro.

Definições que são mesmo definições

O ajuste histórico, o tempo de vida da cache dos gráficos, o intervalo de atualização dos KPI, o valor de retenção, o interruptor do IP do visitante e os três interruptores de posicionamento estão todos numa única página, com predefinições sensatas: dados dos gráficos guardados no navegador do visitante durante uma hora, contadores recalculados no máximo uma vez por minuto.

Há uma ferramenta Test IP na mesma página, para colar um endereço e ver exatamente ao que o módulo o resolve, em vez de andar a adivinhar porque é que um gráfico parece errado.

Multiloja

Cada agregado, cada linha da cache de KPI e cada marca de água de agregação é guardada por loja e por grupo de lojas, por isso cada loja de uma instalação multiloja conta o seu próprio tráfego e desenha os seus próprios gráficos. A tabela de intervalos de IP importada é partilhada, porque não há razão para manter três cópias dos mesmos dados de referência.

Compatibilidade

PrestaShop 1.7 a 9, em oito idiomas: alemão, espanhol, francês, inglês, italiano, neerlandês, polaco e turco.

Há dois hooks sempre registados — um para carregar os recursos do bloco e outro para lhe passar as definições — mais os que ativar entre os três hooks de posicionamento. Sem overrides e sem alterações ao tema. A primeira utilização exige dois passos na página de configuração: importar os intervalos de IP e, depois, atualizar as estatísticas. A partir daí, o módulo trata de si próprio.

Perguntas frequentes

O que significa "online", exatamente?

Visitas que começaram nos últimos 30 minutos. É lido do próprio registo de ligações do PrestaShop, por isso não precisa de rastreio adicional nem de um cookie próprio. Um visitante que esteja há 45 minutos a ler a mesma página deixa de contar como online, o que é normal neste tipo de contador.

Torna a minha loja mais lenta?

O desempenho foi a preocupação central da versão atual, e a resposta honesta tem duas metades. Os dados dos gráficos são agregados em segundo plano em pequenas tabelas de resumo diário, por isso desenhar um gráfico nunca toca no seu registo de ligações. Os cinco números do contador são calculados a partir desse registo, mas o resultado fica em cache e é recalculado no máximo uma vez por minuto por predefinição, por mais movimento que tenha. Uma página vista normal carrega uma pequena folha de estilos e um pequeno script, mais uma pequena imagem de bandeira; a biblioteca de gráficos só é obtida quando alguém abre um gráfico. O único caso a ter em conta é uma loja sem cron agendado, em que um carregamento de página pode também processar um lote de até 1000 ligações quando a cache expira — que é exatamente o que o cron existe para passar para segundo plano.

Onde é que o bloco aparece?

No rodapé, na coluna esquerda, na coluna direita, ou em qualquer combinação — três interruptores na página de configuração, apenas o rodapé por predefinição. Ativar um interruptor regista o hook, por isso o bloco passa também a aparecer em Design → Posições, onde o pode ordenar em relação aos restantes módulos. Mantenha o rodapé ativo se quiser os gráficos, porque as janelas dos gráficos fazem parte do bloco de rodapé; as colunas usam-se melhor em complemento do que em substituição.

Vai ficar bem no meu tema?

No Classic sempre ficou. O trabalho das últimas quatro versões foi fazê-lo comportar-se em tudo o resto: no Hummingbird e noutros temas de PrestaShop 8 e 9, deteta agora as colunas de rodapé do próprio tema e alinha-se com elas como mais uma coluna de largura igual, e herda a cor de texto do rodapé, por isso mantém-se legível num rodapé escuro. Emite atributos de Bootstrap 4 e de Bootstrap 5, pelo que os botões de expandir e o acordeão em ecrãs pequenos funcionam em qualquer um deles. A única falha conhecida é a fonte de ícones: o bloco usa Material Icons, que o Classic carrega e o Hummingbird não, por isso, no Hummingbird, os botões dos gráficos e a seta de tendência de hoje mostram os nomes dos ícones em texto e os símbolos do acordeão não chegam a ser desenhados. Todo o resto — os números, os gráficos, o layout — não é afetado, e acrescentar a fonte ao seu tema resolve a questão.

O módulo guarda os endereços IP dos meus visitantes?

Não. As quatro tabelas que o módulo cria para estatísticas não têm sequer uma coluna de IP. Os IP são lidos da tabela de ligações que o PrestaShop já mantém, usados em memória para calcular uma contagem de distintos e um país, e depois descartados. O que fica guardado é uma contagem por país e por dia. O módulo cria ainda uma outra tabela com os intervalos de referência importados, que são dados públicos que descrevem a Internet e não algo sobre os seus visitantes.

A definição de retenção apaga os dados antigos?

Não, e é importante não partir do princípio contrário. É um valor documentado que define para corresponder à sua política de privacidade; nada é removido automaticamente. Use as ferramentas do próprio PrestaShop para limpar a tabela de ligações com a periodicidade que tiver decidido.

Tenho de configurar uma tarefa cron?

Não para que funcione. Sem cron, um pedido da loja processa um lote de até 1000 ligações sempre que a cache dos KPI expira, por isso uma loja com tráfego regular mantém-se razoavelmente em dia. Configure o cron na mesma: tira esse trabalho dos carregamentos de página dos seus clientes e continua a correr quando não está ninguém a visitar a loja, que é o que na prática conta numa loja com pouco movimento e atraso acumulado para recuperar. A página de configuração dá-lhe o URL com o respetivo token.

Recorre a algum serviço externo de geolocalização?

Não. As consultas de país correm contra uma base de dados de 188 686 intervalos de IP que vem com o módulo e é importada para a sua própria base de dados na primeira configuração. Sem API, sem quota, sem nenhum IP de visitante enviado seja para onde for para enriquecimento. Existem dois pedidos externos e deve conhecê-los. A biblioteca de gráficos vem de um CDN público, mas apenas quando alguém abre um gráfico. A imagem da bandeira do país vem de um CDN público de bandeiras, e essa é a norma e não a exceção: o PrestaShop só inclui ficheiros de bandeira locais para os idiomas que tiver instalados, por isso a maioria dos países acaba por recorrer ao CDN, e acontece quer tenha ativado a apresentação do IP, quer não. Indique-o no seu aviso de privacidade.

Os gráficos aparecem vazios. Porquê?

Execute pela ordem certa os dois passos de arranque na página de configuração: importar os intervalos de IP e, depois, atualizar as estatísticas até indicar 100%. Enquanto as tabelas agregadas não tiverem conteúdo, os gráficos mostram uma única fatia "No data". Os números dos KPI funcionam antes disso e não dependem deste passo.

Todos os visitantes aparecem como "Unknown". O que faço?

A importação dos intervalos de IP não chegou ao fim. Volte a executá-la a partir da página de configuração e use depois a ferramenta Test IP, na mesma página, para verificar um endereço concreto — dir-lhe-á exatamente ao que o módulo o resolveu. Os visitantes que chegam por IPv6 são contados, mas não podem ser atribuídos a um país.

Os meus totais parecem baixos de mais para uma loja com esta idade.

Defina uma vez o ajuste de visitas históricas. É somado ao total de visitantes e ao total de visitas, para que o contador reflita o tráfego que teve antes de instalar o módulo. De propósito, não afeta os números de online, hoje e ontem, que são sempre em tempo real.

Posso mostrar aos visitantes o seu próprio endereço IP?

Sim, há um interruptor para isso, e está desativado por predefinição porque a maioria das lojas deve deixá-lo assim. Se o ativar, é acrescentada ao bloco uma linha que mostra ao visitante o seu próprio endereço, ao lado da bandeira do seu país.

Qual é a diferença entre total de visitantes e total de visitas?

O total de visitas conta todas as visitas. O total de visitantes conta endereços IP distintos. Várias pessoas atrás da mesma ligação de escritório parecem um único visitante, e uma pessoa com IP móvel variável pode parecer vários — isso é inerente a esta forma de contar, e é por isso que o módulo mostra os dois números em vez de dizer que um deles é a verdade.

Funciona numa instalação multiloja?

Sim. Cada agregado, cada valor em cache e cada marca de água é guardado por loja e por grupo de lojas, por isso cada loja conta o seu próprio tráfego e desenha os seus próprios gráficos. A tabela de referência com os intervalos de IP importados é partilhada entre elas.

  • Marca
  • Referência
    4792
  • ean13
    8691246247926

  • Compatibilidade
    Prestashop 1.5
    Prestashop 1.6
    Prestashop 1.7
    Prestashop 8
    Prestashop 9
  • Traduções Disponíveis do Módulo
    Alemão
    Espanhol
    Francês
    Inglês
    Italiano
    Neerlandês
    Polonês
    Turco

Compatibility
PS1.7 PS8 PS9
Translations
Dutch Dutch
English English
French French
German German
Italian Italian
Polish Polish
Spanish Spanish
Turkish Turkish
Demo
Login: demo@demo.com / Demodemo123!
Developer
MEG Venture MEG Venture

Comentários (3)

(5.0)

4 other products in the same category

Share
A carregar...

Utilizamos cookies para lhe proporcionar a melhor experiência de compras. Ao clicar em «Aceitar», concorda com a sua utilização, tal como descrito na nossa política de privacidade.

Learn more
Voltar ao topo