Exiba anúncios diferentes em diferentes categorias

Tenho três anúncios A, B e C e três categorias chamadas a, b e c. Como exibir o anúncio A na categoria a, o anúncio B na categoria b e o anúncio C na categoria c? Não consigo encontrar essa opção nas configurações do plugin de anúncios. Alguma ideia? Obrigado.

O que fiz foi usar anúncios internos que incluem os três anúncios, com CSS que pode ser aplicado em cada categoria para ocultar os anúncios das outras categorias.

Obrigado @pfaffman. Não entendi sua solução. Você está falando de:

  1. Criar três anúncios diferentes com nomes de classes distintos (.first-ad, .second-ad, .third-ad) e configurá-los para aparecerem em todas as três categorias.
  2. Personalizar o estilo CSS das categorias (não tenho certeza de como fazer isso) para ocultar alguns anúncios com base em seu nome de classe (se eu não quiser exibir o segundo anúncio na categoria A, adicionaria .second-ad {display: none} ao estilo CSS).

Sim. Algo assim. Acho que eu tinha isso oculto por padrão e depois sobrescrevi na categoria onde deveria ser exibido. Não sou bom o suficiente em CSS para descrever isso de forma mais eloquente, mas parece que sua compreensão agora está muito próxima da minha. Se não melhor.

Obrigado. Vou tentar mais tarde.

Referência

Adicionando CSS personalizado em categorias específicas

Talvez você “saia melhor” fazendo isso com JavaScript ou, se preferir, com jQuery.

Por exemplo, a classe em um tópico mostra o nome da categoria como neste exemplo:

<span class="category-name">Perguntas de UNIX para Iniciantes</span>

Assim, em um script para a página do tópico, você selecionaria o texto da classe “category-name” e, em seguida, injetaria sua tag de anúncio no elemento div de sua escolha, com base no texto da categoria.

Na minha opinião, este é um método melhor do que ocultar e exibir elementos div de tags de código de anúncio apenas com CSS.

Isso também é muito fácil de implementar para qualquer pessoa com conhecimentos básicos de JavaScript ou jQuery.

Você seleciona o texto interno do elemento span com base na classe do span da categoria. Em seguida, compara esse texto interno com sua lista de categorias e insere seu código de anúncio no elemento DOM de sua escolha naquela página, com base na categoria.

É bem simples para qualquer pessoa com conhecimentos básicos de JavaScript escrever esse código, e provavelmente é a melhor maneira de fazer o que você deseja. @Windsooon

Obrigado pela sua sugestão, é muito útil @neounix. Tenho alguma experiência em JavaScript. No entanto, depois de configurar os anúncios usando CSS, não sei onde colocar meu código JavaScript. Devo:

  1. Colocá-lo no meu servidor (alterar o código na base de código do Discourse)
  2. Colocá-lo em algum lugar no painel de administração
  3. Usar um plugin extra ou um Componente de Tema.

Obrigado

@Windsooon

Você pode adicionar seu código no rodapé (ou acima da tag de fechamento do body) nos seus temas ou pode adicioná-lo no rodapé (ou acima da tag de fechamento do body) em um componente de tema e aplicá-lo aos seus temas. A escolha é sua.

Os seletores DOM serão diferentes dependendo da página onde você está exibindo os anúncios.

Na verdade, você deve manter a maior parte do código no seu site favorito e apenas adicionar o link para carregar o JavaScript no seu tema ou componente de tema, ou pelo menos é assim que eu normalmente faço essas coisas.

Pessoalmente, acho que o jQuery funciona melhor para seleção de DOM em temas, mas tenho certeza de que isso se deve ao fato de eu ter mais experiência com seletores jQuery em comparação com seletores de JS puro.

Entendi! Muito obrigado.

Bem-vindo @Windsooon

Isso é exatamente para o que o JavaScript foi projetado: manipular o DOM, incluindo a inserção de elementos nele. Então, você está no caminho certo! :slight_smile:

Aproveite!!!

Tem alguém que cobraria para ‘fazer isso para mim’? Preciso configurar anúncios por categoria para cerca de 9 categorias.

Olá Mark,

Você obteve algum progresso com isso? Devo ser honesto, meu conhecimento de CSS e Java é muito limitado e estamos nos virando principalmente com os componentes de tema personalizados disponíveis para nós.

Também gostaríamos de usar a “função AD” para simplesmente adicionar texto personalizado às nossas categorias, mas não conseguimos encontrar uma maneira de exibi-la apenas em uma categoria específica.

Se você está procurando adicionar algum texto às suas categorias como um cabeçalho em vez de exibir anúncios, temos o componente de tema Category Banners que parece ser útil?