DF Glossary: glossário SEO para PrestaShop 8 e 9
Instalar e configurar o glossário SEO: termos, sinónimos, balões automáticos, páginas de definição indexáveis e ligação interna para os seus produtos.
Apresentação
O DF Glossary transforma o seu vocabulário técnico num ativo SEO. Introduz os seus termos uma única vez, com uma definição curta e uma definição longa, e o módulo faz três coisas automaticamente: injeta uma ligação com balão em cada ocorrência do termo nas suas descrições de produtos, categorias e páginas CMS; publica uma página de definição indexável por termo; e liga cada definição aos produtos que lhe associar.
O resultado é uma ligação interna bidirecional que se constrói sem esforço editorial: as suas fichas reforçam as suas definições, as suas definições reforçam os seus produtos e as suas definições reforçam-se entre si.
Sem IA, sem API. Todo o processamento é feito em PHP, do lado do servidor. Não há chave API a fornecer, nenhum custo recorrente, nenhum dado do seu catálogo sai do seu servidor, e a renderização é perfeitamente compatível com a cache full-page.
Instalação
Pré-requisitos
- PrestaShop 8.0, 8.1, 8.2 ou 9.x
- PHP 7.4 a 8.3
- MySQL 5.7 / MariaDB 10.3 ou superior
- URLs amigáveis ativados (Parâmetros da loja, Tráfego e SEO), indispensável para as páginas do glossário
Procedimento
- No back-office, vá a Módulos → Gestor de módulos → Instalar um módulo.
- Carregue o ficheiro
dfglossary-1.0.0.zip. - A instalação cria quatro tabelas SQL, um separador de back-office e as chaves de configuração por defeito.
- Aparece um novo separador Catálogo → Glossário SEO no menu. É aí que gere os seus termos.
- Clique em Configurar a partir do gestor de módulos para aceder às definições globais.
Depois da instalação, verifique que os URLs amigáveis estão de facto ativos. Sem eles, as páginas do glossário continuam acessíveis, mas com URLs técnicos pouco adequados ao posicionamento.
Configuração do módulo
O painel de configuração divide-se em três secções.
Ativação e modo de injeção
- Ativar a injeção: interruptor principal. Desativado, o módulo deixa de enriquecer os seus conteúdos, mas as páginas do glossário continuam online e indexadas.
- Modo: três valores possíveis:
- Ligação + balão (por defeito): o termo torna-se uma ligação para a sua página de definição e mostra o balão ao passar o rato. É o modo que combina benefício SEO e benefício de conversão.
- Só ligação: o termo torna-se uma ligação, sem balão. A preferir se só pretende a ligação interna.
- Só balão: o termo mostra a definição ao passar o rato, sem se tornar uma ligação. A preferir se quer pedagogia sem acrescentar ligações de saída nas suas fichas de produto.
Limites (salvaguardas contra a sobreotimização)
- Ocorrências máximas por termo: 1 por defeito. Mesmo que uma palavra apareça oito vezes numa descrição, só a primeira ocorrência se torna uma ligação. Recomendamos vivamente conservar este valor: uma única ligação por noção basta para transmitir o sinal semântico, e as seguintes diluem o PageRank interno sem acrescentar nada.
- Ligações máximas por conteúdo: 10 por defeito, todos os termos incluídos. Acima disso, o motor para, quaisquer que sejam os termos restantes.
Conteúdos abrangidos
Quatro interruptores independentes determinam onde a injeção se aplica:
- Descrições de produtos: a descrição longa.
- Incluir a descrição curta: opção distinta. Atenção: a descrição curta aparece muitas vezes no topo da ficha e nas listagens; colocar-lhe ligações pode ser excessivo.
- Descrições de categorias: descrição e descrição adicional.
- Páginas CMS e categorias CMS: conteúdo das páginas CMS.
Base de URL
O campo Base de URL define o segmento sob o qual as páginas do glossário são publicadas. Valor por defeito: glossaire, o que dá /glossaire para o índice e /glossaire/tela-revestida para uma ficha de termo. Numa loja portuguesa, altere-o para glossario logo na instalação. O campo é validado como uma reescrita de ligação: apenas letras, algarismos e hífenes.
Se alterar a base de URL depois de ter deixado as páginas indexar, todos os URLs do glossário mudam de uma vez. Preveja redirecionamentos 301 a partir dos URLs antigos, ou fixe a base de URL de uma vez por todas no momento da instalação.
Gerir os termos
Vá a Catálogo → Glossário SEO. A lista mostra todos os seus termos com o seu slug, o seu estado de ligação automática e o seu estado. Pode pesquisar, ordenar, filtrar, ativar ou desativar com um clique e eliminar em massa.
Criar um termo
Clique em Adicionar um termo. O formulário é inteiramente multilingue: cada campo de texto é preenchido idioma a idioma.
- Termo: a designação exata procurada nos seus conteúdos. A correspondência não distingue maiúsculas de minúsculas e respeita as fronteiras de palavras.
- Slug: o identificador no URL. Deixe vazio para que seja gerado automaticamente a partir do nome.
- Sinónimos: lista separada por vírgulas. Plurais, abreviaturas, variantes ortográficas: todas estas formas desencadeiam a mesma ligação e o mesmo balão.
- Definição curta: é o texto do balão. Texto simples recomendado. É truncada a 180 caracteres no balão, mas aparece por inteiro no topo da página de definição.
- Definição longa: editor rico. É o corpo da página de definição e o conteúdo que se vai posicionar no Google.
- Meta title / Meta description: opcionais. Na sua ausência, o módulo recorre automaticamente ao nome do termo e à definição curta.
- Produtos associados: lista de IDs de produtos separados por vírgulas. As suas miniaturas serão apresentadas na página do termo.
- Ligação automática: interruptor individual. Desativado, o termo conserva a sua página de definição indexada mas nunca é injetado nos conteúdos.
- Ativo: desativado, o termo desaparece do glossário e a sua página devolve um 404 limpo.
Boas práticas editoriais
- Aponte para 20 a 50 termos. O volume não é a variável importante: um termo merece o seu lugar se aparecer realmente nas suas descrições e se corresponder a uma pergunta que os seus clientes fazem.
- Redija definições longas de 150 a 400 palavras. O suficiente para constituir um conteúdo autónomo aos olhos do Google, curto o suficiente para ser produzido rapidamente.
- Associe 2 a 6 produtos por termo, não mais. Uma página de definição que aponta para vinte produtos dilui a sua autoridade.
- Cuide dos sinónimos. É a alavanca que multiplica a cobertura: um catálogo redigido ao longo de vários anos por várias pessoas raramente exprime um mesmo conceito de uma só forma.
- Não traduza os sinónimos palavra a palavra. Cada idioma tem as suas próprias variantes; introduza-as de forma independente.
Como funciona a injeção
O enriquecimento é feito do lado do servidor, no momento da renderização da página, através dos hooks de filtragem de conteúdo do PrestaShop. As suas descrições nunca são modificadas na base de dados: se desativar o módulo, os seus conteúdos recuperam imediatamente o seu estado original.
O motor de substituição
O conteúdo é dividido em segmentos de etiquetas e segmentos de texto. Só os segmentos de texto são candidatos à substituição. As zonas seguintes são sistematicamente ignoradas:
- ligações existentes (nenhum risco de criar uma ligação aninhada),
- títulos h1, h2 e h3,
- blocos script, style, code, pre, svg, noscript,
- campos de formulário: textarea, select, option, button,
- iframes.
Nos segmentos autorizados, a pesquisa utiliza fronteiras de palavras Unicode: é impossível transformar um fragmento situado no interior de uma palavra ou de um identificador. A correspondência ignora maiúsculas e minúsculas e tolera espaços múltiplos ou quebras de linha. Por fim, cada ligação injetada é temporariamente substituída por um token único durante o processamento: um termo nunca pode, portanto, ser ligado de novo no interior de uma ligação que o próprio módulo acabou de criar.
Ordem de prioridade das variantes
Todas as variantes de um termo (nome principal e sinónimos) são fundidas e depois ordenadas por comprimento decrescente. A expressão mais longa ganha sempre. Concretamente, se tela revestida a PVC e tela revestida figurarem ambas nos seus sinónimos, é a primeira que será ligada quando aparecer por inteiro.
As páginas do glossário
Página de índice
Acessível em /glossario (ou na base de URL que definiu), lista todos os termos ativos, agrupados por letra, com uma navegação alfabética e um excerto por termo. Emite um JSON-LD do tipo DefinedTermSet.
Página de definição
Acessível em /glossario/{slug}, cada ficha inclui:
- um título H1 e a definição curta em destaque,
- a definição longa em formato rico, na qual os outros termos do glossário são por sua vez automaticamente ligados (o termo atual é excluído, sem autoligação),
- as miniaturas dos produtos associados,
- uma nuvem de termos relacionados,
- meta title e meta description dedicados, URL canónico, trilho de navegação,
- um JSON-LD do tipo DefinedTerm.
Se um slug não existir ou se o termo estiver desativado, a página devolve um 404 limpo.
Porque é que esta marcação conta. DefinedTerm e DefinedTermSet indicam ao motor não só de que fala a página, mas que função ocupa na arquitetura do site. Na era das respostas generativas (AI Overviews, ChatGPT, Perplexity), os conteúdos de definição corretamente marcados estão sobrerrepresentados nas citações.
Multilingue e multiloja
Todos os campos de texto do glossário são multilingues: nome, sinónimos, definições, slug, meta title e meta description podem diferir em cada idioma. A correspondência é feita sempre no idioma do contexto atual: uma descrição em português nunca será enriquecida com termos em inglês.
Do lado multiloja, os termos são associados às lojas através da tabela de associação padrão do PrestaShop. Pode portanto ter um glossário técnico denso numa loja B2B e um glossário vulgarizado numa loja B2C, na mesma instalação.
Comportamento em telemóvel
Não há passagem do rato num ecrã tátil. O módulo carrega um mini-script que gere o toque: o primeiro toque num termo mostra o balão e bloqueia a navegação, o segundo toque abre a página de definição. Os outros balões abertos fecham-se automaticamente, e um toque fora do termo fecha o balão.
Desempenho
O dicionário de termos é carregado uma única vez por pedido e guardado em cache estática: mesmo uma página de categoria que mostre trinta produtos só desencadeia um único pedido SQL para o glossário. A substituição em si é uma manipulação de cadeia em PHP, da ordem do milissegundo. Não é carregado nenhum JavaScript bloqueante, não é feita nenhuma chamada de rede, e o resultado é perfeitamente compatível com a cache full-page.
Resolução de problemas
Não aparece nenhuma ligação nas minhas fichas de produto
- Verifique que o interruptor principal Ativar a injeção está em Sim.
- Verifique que Descrições de produtos está ativado nos conteúdos abrangidos.
- Verifique que o termo está ativo e que a sua ligação automática está ativada.
- Verifique que o termo está preenchido no idioma da ficha consultada: um termo introduzido apenas em português nunca será injetado numa descrição em inglês.
- Limpe a cache do PrestaShop (Parâmetros avançados → Desempenho).
O termo aparece no texto mas não está ligado
Três causas possíveis. Ou o termo já está no interior de uma ligação, de um título h1 a h3 ou de uma zona protegida: é o comportamento pretendido. Ou o limite de ocorrências por termo (1 por defeito) já foi atingido para esse conteúdo: as ocorrências seguintes ficam em texto simples, é normal. Ou o limite global de 10 ligações por conteúdo foi atingido.
As páginas do glossário devolvem um 404
- Verifique que os URLs amigáveis estão ativados.
- Regenere o ficheiro .htaccess (Parâmetros da loja → Tráfego e SEO → Gerar o ficheiro .htaccess).
- Verifique que o termo está ativo e que o seu slug está preenchido no idioma consultado.
Os balões não aparecem
Verifique que o modo não está definido em Só ligação. Se o modo estiver correto, limpe a cache e verifique que a folha de estilos do módulo está carregada (é adicionada automaticamente em todas as páginas do front-office).
Desinstalação
A desinstalação elimina as quatro tabelas SQL do módulo, o separador de back-office e o conjunto das chaves de configuração. Os seus termos ficam portanto definitivamente perdidos: exporte-os se contar reinstalar mais tarde. Em contrapartida, nenhuma descrição de produto, categoria ou CMS foi alguma vez modificada na base de dados: os seus conteúdos recuperam simplesmente o seu estado original, sem qualquer limpeza a fazer.
Limites conhecidos
- A unicidade dos slugs não é forçada por idioma. Se dois termos partilharem o mesmo slug no mesmo idioma, o primeiro encontrado ganha. Verifique os seus slugs na introdução.
- As zonas protegidas (ligações, títulos h1 a h3, código, formulários) nunca são enriquecidas. É uma escolha de conceção, não uma limitação contornável.