Pular para o conteúdo principal
Zenovay
Gratuito3 minutosIniciante

Integração com Ghost

Adicione o Zenovay Analytics à sua publicação Ghost através de Settings → Code Injection → Site Header. Funciona em todos os planos Ghost, incluindo auto-hospedado.

ghostcmsblogintegrationtracking-script
Última atualização:

Adicione o Zenovay a qualquer publicação Ghost em dois minutos. O Code Injection está disponível em todos os planos Ghost, incluindo o Ghost CMS auto-hospedado — sem necessidade de upgrade.

O Code Injection está disponível em todos os planos Ghost, incluindo o Ghost CMS auto-hospedado. Temas personalizados precisam do helper {{ghost_head}} em default.hbs (a maioria dos temas já tem).

Início rápido

  1. Copie seu snippet de rastreamento do painel do Zenovay.
  2. No seu admin do Ghost, abra Settings → Code injection → Site Header.
  3. Cole o snippet.
  4. Clique em Save.

Instalação

Injeção no Site Header (recomendado)

  1. Faça login no seu admin do Ghost (geralmente https://seu-site.com/ghost/).
  2. Clique em Settings (ícone de engrenagem).
  3. Role até Site → Code injection.
  4. Cole este snippet na caixa Site Header:
<script defer data-tracking-code="YOUR_TRACKING_CODE" src="https://api.zenovay.com/z.js"></script>
  1. Clique em Save.

Injeção por post / por página

Para rastrear apenas um post específico:

  1. Abra o post no editor.
  2. Clique no ícone de engrenagem (configurações) no canto superior direito.
  3. Expanda Code injection.
  4. Cole o snippet em Post Header.
  5. Atualize o post.

Não cole tanto no global quanto no por post — você vai contar duas vezes.

Verifique sua instalação

  1. Abra seu site Ghost em uma janela anônima.
  2. Visualize o código-fonte e procure por <script defer data-tracking-code=...> no <head>.
  3. Verifique a visualização em tempo real do Zenovay — sua visita aparece em ~30 segundos.

Identifique membros Ghost

O Ghost expõe o membro atual através de /members/api/member/. Identifique em todas as páginas:

<script>
  fetch('/members/api/member/', { credentials: 'include' })
    .then(r => r.ok ? r.json() : null)
    .then(member => {
      if (member && window.zenovay) {
        window.zenovay('identify', member.uuid, {
          email: member.email,
          name: member.name,
          plan: member.subscriptions?.[0]?.plan?.nickname,
        });
      }
    })
    .catch(() => {});
</script>

Rastreamento de inscrições em newsletter

Os formulários de inscrição do Ghost emitem um evento submit padrão:

<script>
  document.addEventListener('DOMContentLoaded', () => {
    document.addEventListener('submit', (e) => {
      const form = e.target;
      if (form?.matches('[data-members-form]')) {
        window.zenovay?.('track', 'signup', {
          form_type: form.dataset.membersForm || 'signup',
        });
      }
    }, true);
  });
</script>

Rastreamento de cliques em assinatura paga

O Ghost renderiza botões de acionar portal com atributos data-portal:

<script>
  document.addEventListener('click', (e) => {
    const target = e.target.closest('[data-portal]');
    if (target && window.zenovay) {
      window.zenovay('track', 'portal_opened', {
        action: target.dataset.portal,
      });
    }
  }, true);
</script>

Para atribuição de receita precisa em assinaturas pagas, use a integração de webhook Stripe do Ghost e envie eventos do Stripe para o Zenovay via rastreamento server-side.

Trabalhando com temas Ghost personalizados

O Code Injection é renderizado através do helper Handlebars {{ghost_head}}. Se você usa um tema personalizado, certifique-se de que default.hbs contém:

{{ghost_head}}

…dentro do <head>, antes de </head>. A maioria dos temas Ghost de terceiros (Casper, Source, Edition, etc.) inclui isso por padrão.

Solução de problemas

Sem dados, tema personalizado. Verifique se {{ghost_head}} está presente no seu default.hbs. Sem ele, o Code Injection não tem onde renderizar.

Sem dados nas URLs /amp/. Se você habilitou a integração Ghost AMP, o Code Injection não se aplica às variantes AMP (o AMP remove scripts arbitrários). Desative o AMP ou aceite que o tráfego AMP não será rastreado.

Visualizações de página duplicadas. Snippet colado no Site Header e no Code Injection por post. Escolha um escopo.

Membros nunca identificados. /members/api/member/ retorna 404 em versões mais antigas do Ghost (< 4.x). Faça upgrade da sua instalação Ghost.

Requisitos do plano

Edição do GhostCode InjectionTemas personalizados
Ghost(Pro) Starter❌ (somente Casper)
Ghost(Pro) Creator
Ghost(Pro) Team / Business
Ghost CMS auto-hospedado

Privacidade

Para rastreamento sem cookies, adicione data-cookieless="true":

<script defer
        data-tracking-code="YOUR_TRACKING_CODE"
        data-cookieless="true"
        src="https://api.zenovay.com/z.js"></script>

O próprio analytics de membros do Ghost usa cookies first-party de qualquer forma, então adicionar o Zenovay em modo sem cookies é um padrão comum.

Próximos passos

Este artigo foi útil?