Anúncios apenas para usuários registrados?

Existe alguma maneira de mostrar anúncios apenas para usuários registrados e não para visitantes?

Ou de usar uma tag de script personalizada dependendo do estado da sessão?

A lógica aqui é que aqueles que aceitaram os Termos/Política de Privacidade durante o cadastro/SSO aceitaram o uso de cookies/anúncios em outros lugares, enquanto os visitantes não.

Acredito que a necessidade/escopo disso seja limitado (principalmente países do EEE), mas já ficaria satisfeito se houvesse uma maneira de fazer isso independentemente da localização do visitante.

Dicas sobre onde procurar no código para fazer isso também são bem-vindas.

Você poderia ocultar com CSS, mas ainda receberia cookies e estaria coletando informações. Edição: este é um conselho ruim.

Talvez você queira isso: Discourse Cookie Consent Banner

De fato, ocultar anúncios com CSS não resolve nada quanto aos cookies ou aos dados sendo coletados.

Isso depende de um serviço de terceiros que é um produto pago. E, ao analisar seu código-fonte, parece que ele apenas exibe o banner, mas não faz nada para impedir cookies acionados pelo plugin de Anúncios do Discourse.

Em qualquer caso, esse banner gerencia o consentimento para o uso de cookies — isso não é suficiente para o consentimento mais rigoroso exigido pelo GDPR para coletar informações privadas necessárias, por exemplo, para anúncios direcionados. Esse consentimento precisa ocorrer antes que qualquer anúncio seja carregado.

Já coletamos o consentimento para isso em outro lugar (SSO), então uma opção para exibir anúncios apenas para usuários logados seria uma forma de lidar com isso, mas acredito que isso possa ser específico da nossa configuração.

Só pra constar, no nosso site, exibimos anúncios apenas para usuários convidados, verificando o ID do usuário. No nosso fórum “fora do Discourse”, todos os usuários convidados (não logados) têm um ID de usuário menor que um, o que facilita a verificação e impede que anúncios sejam exibidos para membros (o oposto de servir anúncios apenas para usuários registrados).

Ainda não analisei o plugin oficial de anúncios do Discourse para ver se essa é uma opção de configuração ou se é possível com uma simples modificação de código.

Quando você diz “servir anúncios”, você se refere ao DoubleClick/rede de anúncios pública ou a anúncios internos?

Se uma rede de anúncios pública não puder ver os anúncios sendo exibidos na página (porque estão ocultos para visitantes), você corre o risco de ter sua conta suspensa. Impressões sem verificação geralmente são sinalizadas como abuso; eles assumem que você está renderizando anúncios fora da área visível ou fazendo algo igualmente suspeito.

Ao dizer que não servimos anúncios, queremos dizer que realmente não servimos anúncios. No nosso caso, somos donos e operamos nosso próprio servidor de anúncios, e esse servidor executa tags conforme especificamos (anúncios internos, redes de tecnologia, campanhas especiais, tags do Google Ad, inúmeras redes de anúncios… cabe a nós e aos nossos clientes de anúncios como servimos os anúncios). oi

Não servir anúncios não é o mesmo que ocultar anúncios. É não servir anúncios.

Podemos facilmente configurar “servir anúncios internos para a China”… “não servir anúncios para membros”… “servir apenas anúncios de redes de tecnologia para os EUA”… “servir anúncios verdes para o Brasil” … “não servir anúncios para o Reino Unido” “Servir anúncio roxo para navegadores FF” … “Servir anúncios rosa para o Chrome”… Tudo isso é muito básico: introdução ao serviço de anúncios nível 101.

Gerenciamos e servimos anúncios há mais de 15 anos e não corremos risco algum.

Sabemos o que estamos fazendo e estamos neste negócio há muito, muito tempo.

Quanto aos outros, toda essa conversa sobre CSS e “ocultar anúncios” não é como gerenciar um site ou mesmo discutir o assunto. Você serve anúncios aos usuários com base em diversos critérios (geografia, status do usuário, hora do dia; podemos direcionar anúncios até mesmo para o navegador e o sexo do usuário). Tudo isso é introdução básica ao servidor de anúncios nível 101 se você opera seu próprio servidor de anúncios.

Acredito que servimos cerca de 500 milhões de anúncios no ano passado (talvez menos, já que o tráfego no fórum antigo tem diminuído), desde anúncios internos até compras diretas personalizadas de fornecedores.

Não tenho ideia de como o plugin de anúncios do Discourse funciona; mas, do ponto de vista do serviço de anúncios, não há absolutamente nada de errado em direcionar usuários registrados e não direcionar (ou servir anúncios a) visitantes. É assim que o serviço de anúncios funciona. Direcionamento.

No nosso caso, operamos um servidor de anúncios e fazemos direcionamento com base em uma infinidade de critérios. Tudo isso é muito básico: introdução ao servidor de anúncios nível 101. Em nosso site, há quase duas décadas, servimos anúncios apenas para usuários não registrados (visitantes). Nossos membros nunca veem anúncios, conforme política de longa data.

Exemplo de direcionamento de anúncios

É assim que funciona todo servidor de anúncios que já gerenciei.

Além disso, no nível mais básico, podemos desativar todos os anúncios (todo serviço de anúncios) para qualquer região geográfica, membro (com base em diversos critérios) e muito mais. Isso é direcionamento básico de anúncios usando todos os servidores de anúncios comerciais.

Em um fórum, é relativamente fácil definir um valor booleano e não servir anúncios a nenhum grupo, conforme a escolha do site.

No entanto, com plugins do Discourse, não tenho ideia, já que não temos planos imediatos de servir anúncios; mas, se o fizermos, prometo que não serviremos anúncios para usuários logados, mesmo que precise modificar o plugin eu mesmo ou criar o meu próprio :slight_smile:

Para quem nunca viu o gerenciamento de anúncios de fóruns legados (os plugins de anúncios modernos são muito mais bonitos, LOL), aqui estão duas capturas de tela de um sistema de gerenciamento de anúncios vB legado (apenas a página de configurações globais, não as páginas detalhadas para posicionamentos de anúncios).

Isso não é o “servidor de anúncios”; é apenas um plugin que auxilia no direcionamento de posicionamentos por IDs de fórum (categorias), grupos de usuários, etc. Tudo isso é muito legado e mal usamos mais, então, só para informar.

No entanto, você pode ver que os grupos de usuários podem ser facilmente direcionados, incluindo a exibição ou não de anúncios para qualquer classe de grupo de usuários (convidados, usuários registrados, moderadores, líderes), etc.

Veja também:

Nota: No bare metal (o servidor), também direcionamos com base em geolocalização, cookies, etc. Tudo isso é básico de servidor de anúncios 101, para ser franco. Por exemplo, podemos facilmente fazer isso: “use o servidor de anúncios um na Alemanha” e “use o servidor de anúncios três no Japão”… o céu é realmente o limite quando você combina (1) “bare metal”, (2) um bom “plugin de posicionamento de anúncios” e (3) “execute seu próprio servidor de anúncios”.

Sobre o plugin de anúncios do Discourse…

Acabei de dar uma olhada pela primeira vez no plugin.

$ pwd
/Users/Tim/desktop/discourse-adplugin/test/javascripts/acceptance
$ vi dfp-test.js.es6

Parece que a funcionalidade básica para exibir anúncios para determinados níveis de confiança e grupos já está presente (no entanto, não a testei, mas parece bastante direta, já que ela já está no plugin…)

Aqui está o código:

Desculpe, não estava nos meus planos trabalhar com este plugin neste mês; mas, após uma breve análise do código, parece direto direcionar com base em níveis de confiança e grupos de usuários.

De qualquer forma… acabei de verificar a documentação… a maior parte disso já existe no plugin de anúncios do Discourse, veja, por exemplo (AdSense através do nível de confiança, nesta configuração de exemplo):

O plugin de anúncios do Discourse não trata do direcionamento, mas principalmente da inserção do código dos blocos de anúncio na saída do Discourse. Pode-se usar algo como o DFP (Ad Manager) para o direcionamento por localização geográfica e outros critérios. Não acho que este plugin deva lidar com as partes de direcionamento.

Ele já possui uma configuração para não exibir anúncios acima de um determinado nível de confiança. Nossa necessidade (novamente, específica para nossa configuração de SSO) é quase o oposto: não exibir anúncios de forma alguma para convidados, pois eles não deram o consentimento.

Sou novo em Ruby e na base de código do Discourse, mas vou examinar o código e ver se consigo encontrar uma solução. Agradeceria qualquer dica.

Veja aqui (exemplo do AdSense, cada arquivo é diferente nesse diretório). Você pode ajustar ligeiramente a lógica neste código para exibir anúncios apenas para usuários acima de um determinado nível de confiança ou grupo de usuários (em vez de abaixo), etc.

FYI (e uma dica)

./discourse-adplugin/assets/javascripts/discourse/components

Isso “pode” ser facilmente modificado e reconstruído (teste no seu servidor de staging favorito) para realizar o que você pediu, conforme entendi sua postagem original (mostrar anúncios apenas para membros). Se você basear isso no nível de confiança ou no grupo de usuários, então, claro, é quase trivial modificar.

Desculpe, não testei, apenas estou analisando o código para você.

Só estou dando minha opinião.

Permitir que anúncios sejam direcionados a grupos específicos de usuários (ou ignorados para certos grupos) faria muito sentido.

Muitas comunidades oferecem opções pagas para remover anúncios como forma de custear seus gastos.

Softwares de fórum mais antigos têm opções como essa que podemos implementar ao redor do código de anúncios. Existe algo equivalente no Discourse se quisermos modificar isso nós mesmos?

<if !user_in($loggedinuser($usergroup[id])); />
Código do anúncio aqui
</endif>

Ou algo assim. Faz um tempo que não vejo isso.

Sim, existem configurações para controlar isso. Adicione os usuários a um grupo “subscribers” e inclua-os em “no ads for groups”.