Automatizando o Storytelling: Inserindo uma Assinatura Dinâmica em Todos os Posts

Uma das regras de ouro da programação e da administração de sistemas é o princípio DRY (Don’t Repeat Yourself — Não Repita a Si Mesmo). Se você precisa fazer a mesma tarefa manualmente mais de três vezes, ela deveria ser automatizada.

Conforme o blog cresce, percebi que queria manter um laço narrativo com o início do projeto. Quero que todo leitor, ao terminar um artigo técnico, tenha a chance de entender a filosofia “sem firulas” e minimalista que rege este ambiente.

A solução manual seria escrever um parágrafo no final de cada novo texto convidando a ler o post de “Setup Inicial”. Mas isso traz dois problemas:

  1. Trabalho braçal: É fácil esquecer de colocar.
  2. Manutenção pesada: Se um dia eu quiser mudar o texto desse convite, teria que editar 50 posts um por um.

A Solução: Injeção de Código via Hooks

Como estamos usando o tema GeneratePress e o plugin Code Snippets, podemos resolver isso de forma elegante usando “Hooks” (ganchos).

Basicamente, dizemos ao WordPress: “Sempre que você terminar de renderizar o conteúdo de um post, insira este bloco de HTML automaticamente antes de fechar a página.”

O Código

Criei um novo snippet PHP que faz essa verificação e inserção. A lógica é simples:

  1. Verifica se a página atual é um Post individual (is_single()). Isso evita que a assinatura apareça na Página Inicial ou em páginas de “Sobre”.
  2. Usa o gancho generate_after_content para “colar” o nosso convite no rodapé do artigo.

Aqui está o código exato que está rodando neste momento no blog:

add_action( 'generate_after_content', 'adicionar_assinatura_genesis' );

function adicionar_assinatura_genesis() {
    // Exibe apenas em posts individuais (não na Home ou Páginas)
    if ( is_single() ) {
        // Estilização inline para manter simples e isolado
        echo '<div class="genesis-signature" style="margin-top: 50px; padding-top: 20px; border-top: 1px solid #e0e0e0; font-size: 0.95em; color: #555; font-style: italic;">';
        
        echo '🏗️ <strong>Construindo em Público:</strong> ';
        echo 'Este blog é um laboratório vivo. Se você tem curiosidade sobre as ferramentas que escolhi para manter este site leve e minimalista, ';
        echo '<a href="/bastidores/setup-inicial" style="text-decoration: underline; font-weight: bold;">veja como tudo começou</a> no post de setup inicial.';
        
        echo '</div>';
    }
}

O Resultado

A beleza dessa abordagem é que ela é retroativa. No momento em que ativei esse código, todos os posts antigos do blog ganharam essa assinatura instantaneamente.

Se você rolar a página para baixo agora, verá esse código em ação. É uma forma sutil, mas poderosa, de criar um ciclo de engajamento e manter a história do blog sempre viva.

🏗️ Construindo em Público: Este blog é um laboratório vivo. Se você tem curiosidade sobre as ferramentas que escolhi para manter este site leve e minimalista, veja como tudo começou no post de setup inicial.