Matomo Analytics

||||
-|-|
:discourse2: | Resumo | Matomo Analytics é um script para habilitar o Matomo Analytics no Discourse.
:hammer_and_wrench: | Link do Repositório | https://github.com/discourse/discourse-matomo-analytics
:open_book: |Novo nos Temas do Discourse? | Guia para iniciantes sobre como usar Temas do Discourse

Instale este componente de tema

Recursos

Matomo é uma plataforma de análise de código aberto. Os usuários podem escolher entre auto-hospedagem ou pagar por hospedagem profissional na nuvem.

:mega: O Matomo era anteriormente chamado de Piwik. Veja Piwik is now Matomo - Announcement - Analytics Platform - Matomo para mais detalhes sobre a mudança de nome.

Para habilitar o Matomo Analytics no seu fórum Discourse, tudo o que você precisa fazer é instalar o componente de tema oficial.

Válido para a API v1.5 do Matomo e mais recentes

  1. Siga o guia de instalação do tema para importar a partir do seguinte URL:

    https://github.com/discourse/discourse-matomo-analytics.git
    

    E você verá

  2. Insira o Host URL e o Website ID

  3. Adicione o componente de tema “Matomo Analytics” ao(s) seu(s) tema(s) ativo(s).

Pronto!

Configurações

| Nome | Descrição
|-|
| host url | URL do Host sem http:// ou https://
| website id |
| exclude groups | Lista separada por vírgulas de grupos a serem excluídos do rastreamento, como administradores, equipe
| user id tracking | Um nome de campo identificador no objeto de usuário atual, como id, username ou external_id.
| subdomain tracking | Rastreia visitantes em todo o domínio principal e subdomínios, assumindo que o Discourse está em um subdomínio.
| do not track | Para que as solicitações de rastreamento não sejam enviadas se os visitantes não quiserem ser rastreados.
| disable cookies | Desabilita todos os cookies de primeira parte. Os cookies existentes do Matomo para este site serão excluídos na próxima visualização de página.

Créditos

Obrigado a @mattab & @brahn @tagtomat e @simon


:discourse2: Hospedado por nós? Os componentes de tema estão disponíveis para uso em nossos planos Standard, Business e Enterprise.

38 curtidas

Thanks for this howto, works fine for me. :thumbsup:

In order to comply with the European laws, users must have the possibility to reject piwik’s cookie. Piwik offers a really simple solution for this, by including an IFrame.

Unfortunately, Discourse doesn’t allow iframe tags in posts… :grimacing:
Does anyone see a way to include this piwik iframe in Discourse TOS ?
Thanks.

1 curtida

:wave: I just created a new “Matomo Analytics” theme component, and updated the instructions on how to set it up.

Could you give it a try? Please also remember to remove the original custom scripts.

8 curtidas

Looks good on first sight. No error in javascript console. Requests to piwik.php being in the webserver log again.

Statistics in Matomo are available as well.

5 curtidas

Is this iframe thing still a concern?

1 curtida

Hey @xrav3nz :clap: your component works great - thanks!

Yes it is. Opt-out should be possible, and Matomo provides this via including an iFrame: see Matomo documentation

3 curtidas

This doesn’t appear to be working for me at the moment? I can add the component, and add the correct URL and siteid, but it doesn’t render anything:

I added the comments around the code to find it quicker in the page:

1 curtida

We are on beta 6+git1 on our instance

Inline JavaScripts in themes and components are automatically extracted to an external “theme JavaScript” file.

Could you try checking the one immediately after your comments?

7 curtidas

This is at the main page on https://discuss.pixls.us:

Edit
Hold on, I’ve got a new hash on the file on recent refresh, it looks like the code is there. Thank you @xrav3nz!

Looks like it’s working now - not sure what I was doing wrong yesterday - user error.

5 curtidas

So I have the JS loaded into the theme customizations, and the external “theme JavaScript file”* is linked in my test browser, just under where I inserted it like in the screenshot in a few posts earlier … BUT the requests aren’t coming through to the Matomo tracking web server.

(Tracking works fine for other non-Discourse sites, FWIW.)

Has anyone else seen that happen?


* e.g. https://discourse-cdn.example.com/standard11/theme-javascripts/{numeric_string}.js?__ws=my-discourse-forum.example.org

Obrigado pelo componente!

Estou confuso sobre por que o código de rastreamento está enviando uma variável personalizada chamada “Anonymous”. Isso não seria específico para a sua configuração do Matomo? Parece que não deveria estar presente para todos.

_paq.push(['setCustomVariable', 1, 'Anonymous', !currentUser, 'visit']);

Adicionei algumas linhas para que fosse possível rastrear visitantes entre o Discourse em um subdomínio e um site principal. Fico à disposição para enviar um pull request se desejar.

Você precisa adicionar sua URL do Matomo à lista de permissões no cabeçalho Content-Security-Policy. Procure pela configuração de administração content_security_policy_script_src e adicione seu domínio (com https://) lá.

6 curtidas

Estou com dificuldades para fazer isso funcionar na minha instalação. Instalei o componente e o adicionei ao meu tema, mas o Matomo está dizendo que não há dados para o site. Acredito que as configurações estejam corretas:


image
Mas estou vendo este erro no console do meu navegador:
image
…e quando verifico o site no Matomo, vejo isso:

O que estou esquecendo?

Edição: Uma investigação mais aprofundada revela que o erro no console do JavaScript só aparece no Firefox, não no Chrome (com as versões mais recentes de cada um em um Mac). E agora estou vendo alguns resultados no Matomo, embora o Firefox esteja conspicuamente ausente — todos, exceto um dos visitantes, estão usando o Chrome; a única exceção está usando o Safari.

Alguma opinião sobre isso? Este post:

sugere que poderia ser a configuração “não rastrear” do Firefox, mas mesmo quando as desativo para o meu site, continuo recebendo o mesmo erro no console do navegador no Firefox. E, de qualquer forma, o Firefox não parece estar vendo isso como um rastreador:

Tente remover a última / de “https://www.familybrown.org/analytics/” → “https://www.familybrown.org/analytics

1 curtida

Obrigado. Infelizmente, ainda estou recebendo o mesmo erro:
image

Você poderia me dar a URL do seu fórum?

Esses dois campos precisam ser preenchidos? Não entendi muito bem o que eles são.