NOUSK

Nousk AD: inserindo anuncios de forma fácil e rápida

Nousk AD é um plugin para inserção de anúncios com controle manual e automático, sem dependências externas, usando parsing de conteúdo e foco na experiência de quem edita.

Como criar um plugin de anúncios no WordPress com controle automático e manual

Durante muito tempo, inserir anúncios em posts WordPress foi sempre a mesma história: soluções engessadas, plugins pesados ou código espalhado pelo tema.
Em um projeto antigo, eu precisei resolver um problema simples, mas que acabou mudando completamente minha forma de pensar desenvolvimento.

A necessidade era: inserir anúncios automaticamente no conteúdo, mas sem perder o controle manual quando necessário.

Foi aí que nasceu a ideia de construir uma lógica baseada no próprio conteúdo. E depois, transformei isso em um plugin.

O problema

No início, a regra era simples: inserir um anúncio a cada 8 parágrafos.

Mas na prática, isso não funcionava para todos os posts.
Alguns conteúdos ficavam poluídos outros não tinham parágrafos suficientes e em alguns casos o anúncio precisava aparecer em um ponto específico.

Ou seja, não existia uma única solução.

A solução: três modos de funcionamento

O plugin foi pensado para resolver isso com flexibilidade.

Ele possui três modos:

  • Sem anúncios: O conteúdo é exibido sem nenhuma alteração.
  • Automático: O plugin insere anúncios com base na quantidade de parágrafos.
  • Manual: O editor decide exatamente onde o anúncio deve aparecer.

Modo manual: controle total

No modo manual, o editor usa um shortcode no conteúdo: [nousk_ads]
E o plugin substitui esse shortcode pelo código do anúncio.

Simples. Sem interface complicada. Sem configuração extra. Sem depender de blocos específicos.
Isso dá controle total para quem está escrevendo.

Modo automático: onde entra o parser

No modo automático, o plugin precisa:

  • entender o conteúdo
  • contar parágrafos válidos
  • inserir anúncios sem quebrar o HTML

E para isso, entra o conceito de parsing.

O que é parsing nesse contexto

Nesse caso, parsing é a lógica usada para ler o conteúdo do post, identificar os parágrafos e reconstruir esse conteúdo com os anúncios inseridos nos pontos certos.

No caso do WordPress:
o conteúdo do post é uma string com HTML

O plugin:
1. lê esse conteúdo
2. divide em partes
3. identifica o que é relevante
4. reconstrói o conteúdo com novas regras

Como o plugin analisa o conteúdo

A lógica funciona assim: Na versão atual, a lógica trata o conteúdo com base no fechamento de parágrafos (</p>), usando essa estrutura como referência para identificar onde os anúncios podem ser inseridos.

Parágrafos vazios são ignorados:

  • <p></p>
  • <p>&nbsp;</p>

Inserção dos anúncios

Depois de contar os parágrafos válidos, o plugin:

  • insere o anúncio a cada X parágrafos
  • evita inserir anúncios consecutivos
  • mantém a estrutura original do conteúdo

E tem uma regra importante: sempre garantir um anúncio no final do post, mesmo que o conteúdo seja pequeno.

Validação: evitando erro antes de quebrar o conteúdo

Uma parte importante do plugin é a validação no admin.

No modo automático:

Erros (bloqueiam)

  • intervalo vazio
  • intervalo menor que 1

Avisos (não bloqueiam)

intervalo maior que a quantidade de parágrafos válidos. Nesse caso, o plugin avisa que: o anúncio aparecerá apenas ao final.
Isso evita comportamento inesperado e deixa o uso do plugin mais claro para quem está editando.

Estrutura do plugin

O plugin foi dividido em classes, cada uma com uma responsabilidade:

  • Admin: configuração global
  • Metabox: controle por post
  • Shortcode: modo manual
  • Parser: lógica de inserção automática
  • Validator: regras e mensagens no admin

Isso mantém o código organizado e fácil de evoluir.

O ponto mais importante: pensar em quem edita

Esse plugin não nasceu só como solução técnica. Ele nasceu de um problema real de edição de conteúdo. A ideia não era só inserir anúncios. Era permitir que quem escreve tenha controle, sem precisar entender código.

Limitações da versão atual

Essa é a primeira versão do plugin, então algumas decisões foram feitas para manter a simplicidade:

  • apenas um tipo de anúncio global
  • não diferencia mobile e desktop
  • não possui opções visuais
  • parsing baseado em `<p>`

Possíveis melhorias para próximas versões

Aqui já tem bastante espaço para evoluir:

  • suporte a múltiplos anúncios
  • anúncios diferentes para mobile e desktop
  • opções de layout e estilo
  • escolha de posicionamento final
  • melhor integração com Gutenberg
  • parser mais avançado para HTML complexo

Github

⇐Voltar para o Blog
Github LinkedIn YouTube Instagram TikTok