<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>EduardoVillão</title><description>Desenvolvedor full-stack com mais de 10 anos construindo produtos reais. Escrevendo sobre IA, arquitetura de software e a mentalidade por trás de criar coisas que importam.</description><link>https://eduardovillao.me/</link><language>pt-br</language><item><title>IA sem padrão é só caos mais rápido</title><link>https://eduardovillao.me/pt-br/ia-sem-padrao-e-so-caos-mais-rapido/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/ia-sem-padrao-e-so-caos-mais-rapido/</guid><description>Todo time de engenharia que eu converso está usando IA. Ninguém debate mais isso. O que ninguém está falando é que cada dev no mesmo time está usando de um jeito diferente. O problema que ninguém admite Dez devs. Dez setups diferentes. Dez arquivos de regras diferentes. Dez hábitos de prompting diferentes. Mesmo codebase, mesmos</description><pubDate>Mon, 27 Apr 2026 11:44:58 GMT</pubDate></item><item><title>Seus logs de 404 são um relatório de segurança que você está ignorando</title><link>https://eduardovillao.me/pt-br/seus-logs-de-404-sao-um-relatorio-de-seguranca-que-voce-esta-ignorando/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/seus-logs-de-404-sao-um-relatorio-de-seguranca-que-voce-esta-ignorando/</guid><description>A maioria dos devs WordPress instala um plugin de redirect, configura uns 301, e nunca mais olha pros logs de 404. Isso é um erro. Seus logs de 404 são um mapa em tempo real de quem está sondando seu site e o que estão procurando. Bots escaneando arquivos de ambiente expostos, vazamento de credenciais,</description><pubDate>Wed, 22 Apr 2026 12:46:25 GMT</pubDate></item><item><title>O que 150+ votos de feature me ensinaram sobre construir as coisas erradas</title><link>https://eduardovillao.me/pt-br/o-que-150-votos-de-feature-me-ensinaram-sobre-construir-as-coisas-erradas/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/o-que-150-votos-de-feature-me-ensinaram-sobre-construir-as-coisas-erradas/</guid><description>Estou usando o WPFeatureLoop nos meus próprios plugins há pouco mais de um mês. Nesse período, coletei mais de 150 votos em 11 feature requests, e isso já mudou o que vou construir a seguir. Aqui vai como os dados realmente são, e o que eles me ensinaram sobre meus próprios pontos cegos como desenvolvedor.</description><pubDate>Wed, 22 Apr 2026 11:35:50 GMT</pubDate></item><item><title>Na Era da IA, Soft Skills São as Hard Skills</title><link>https://eduardovillao.me/pt-br/na-era-da-ia-soft-skills-sao-as-hard-skills/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/na-era-da-ia-soft-skills-sao-as-hard-skills/</guid><description>Quanto mais poderosa a IA fica, mais humano o gargalo se torna. Você abre um chat novo, digita um prompt vago, recebe uma resposta medíocre e culpa o modelo. O modelo não é o problema. O Que Realmente Mudou Na última década, a coisa mais valiosa que um desenvolvedor podia fazer era executar. Escrever o</description><pubDate>Tue, 14 Apr 2026 14:02:42 GMT</pubDate></item><item><title>wp_add_inline_script não funciona em Block Themes (FSE): Causa e Solução</title><link>https://eduardovillao.me/pt-br/wp_add_inline_script-nao-funciona-em-block-themes-fse-causa-e-solucao/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/wp_add_inline_script-nao-funciona-em-block-themes-fse-causa-e-solucao/</guid><description>Você chama wp_add_inline_script() dentro de um shortcode. Funciona perfeitamente em temas clássicos. Aí você troca pra um block theme — ou seu usuário troca — e de repente: nada. Sem erro PHP, sem warning, só uma falha silenciosa e um X is not defined no console do browser. Isso é uma inconsistência conhecida, rastreada no</description><pubDate>Tue, 14 Apr 2026 14:00:38 GMT</pubDate></item><item><title>Como Eu Melhorei a Taxa de Ativação do WPFeatureLoop em 80% com WordPress Playground</title><link>https://eduardovillao.me/pt-br/como-eu-melhorei-a-taxa-de-ativacao-do-wpfeatureloop-em-80-com-wordpress-playground/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/como-eu-melhorei-a-taxa-de-ativacao-do-wpfeatureloop-em-80-com-wordpress-playground/</guid><description>A maioria dos produtos SaaS tem um gap entre o signup e o momento em que o usuário realmente entende o produto. No WPFeatureLoop, esse gap era brutal. Usuários criavam uma conta, olhavam o dashboard, e… nada. O próximo passo era instalar um SDK via Composer. Pra um dev WordPress que só queria ver se</description><pubDate>Tue, 14 Apr 2026 13:58:41 GMT</pubDate></item><item><title>Por que você deveria parar de usar left e right no CSS</title><link>https://eduardovillao.me/pt-br/por-que-voce-deveria-parar-de-usar-left-e-right-no-css/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/por-que-voce-deveria-parar-de-usar-left-e-right-no-css/</guid><description>Quem já está no mundo da programação há algum tempo se acostumou a escrever margin-left, padding-right e rounded-l quase no automático. Virou muscle memory de qualquer dev e a maioria das pessoas ainda escreve CSS assim: Ou, no Tailwind: Funciona. Sempre funcionou! Mas existem situações em que isso deixa de ser só detalhe e começa</description><pubDate>Thu, 12 Feb 2026 15:33:42 GMT</pubDate></item><item><title>Meu primeiro WordCamp Brasil (Rio de Janeiro)</title><link>https://eduardovillao.me/pt-br/meu-primeiro-wordcamp-brasil-rio-de-janeiro/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/meu-primeiro-wordcamp-brasil-rio-de-janeiro/</guid><description>No final de novembro participei do WordCamp Brasil 2025, realizado no Rio de Janeiro. Foi meu primeiro WordCamp, algo que eu já tinha vontade de vivenciar há bastante tempo, então deixo aqui esse registro pessoal da experiência. A participação no evento também contou com o apoio da Extendify, empresa onde trabalho atualmente, o que tornou</description><pubDate>Thu, 11 Dec 2025 23:47:14 GMT</pubDate></item><item><title>Como Auto-Hospedar Plugins do WordPress no GitHub e Entregar Atualizações</title><link>https://eduardovillao.me/pt-br/como-auto-hospedar-plugins-do-wordpress-no-github-e-entregar-atualizacoes/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/como-auto-hospedar-plugins-do-wordpress-no-github-e-entregar-atualizacoes/</guid><description>Gerenciar atualizações de plugins pode ser um desafio, especialmente se você não está utilizando o repositório oficial de plugins do WordPress. Mas e se você pudesse auto-hospedar seus plugins no GitHub e entregar atualizações de forma transparente, sem a necessidade de bibliotecas complexas ou serviços de terceiros? Neste guia, apresento uma solução simples e poderosa</description><pubDate>Fri, 14 Feb 2025 17:22:55 GMT</pubDate></item><item><title>Manipule Eventos de Popups do Elementor Sem jQuery</title><link>https://eduardovillao.me/pt-br/manipule-eventos-de-popups-do-elementor-sem-jquery/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/manipule-eventos-de-popups-do-elementor-sem-jquery/</guid><description>Se você já trabalhou com o Elementor e tentou manipular seus popups programaticamente, provavelmente percebeu que a documentação oficial oferece exemplos de manipulação de eventos apenas com jQuery. Porém, se você prefere uma solução moderna e leve utilizando Vanilla JavaScript, este guia é para você. Com a API MutationObserver, você pode monitorar alterações no DOM</description><pubDate>Mon, 20 Jan 2025 17:08:04 GMT</pubDate></item><item><title>Masky.js: Uma Alternativa Leve ao Inputmask, Cleave.js e IMask</title><link>https://eduardovillao.me/pt-br/masky-js-uma-alternativa-leve-ao-inputmask-cleave-js-e-imask/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/masky-js-uma-alternativa-leve-ao-inputmask-cleave-js-e-imask/</guid><description>Encontrar a biblioteca certa para mascarar inputs pode ser um desafio. Existem muitas opções disponíveis, cada uma com seus prós e contras. Algumas são repletas de recursos, mas pesadas; outras são leves, mas carecem de funcionalidades importantes, como validação ou otimizações para dispositivos móveis. No mundo atual, onde performance e experiência do usuário são prioridades,</description><pubDate>Fri, 10 Jan 2025 17:03:14 GMT</pubDate></item><item><title>Como adicionar máscara nos campos do formulário do Elementor – plugin gratuito</title><link>https://eduardovillao.me/pt-br/mascara-nos-campos-do-formulario-do-elementor/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/mascara-nos-campos-do-formulario-do-elementor/</guid><description>Sim, eu tenho certeza que você já ter se perguntado: por que o formulário do Elementor não tem máscaras para os campos? Comigo não foi diferente, então pra ajudar desenvolvi um plugin gratuito para te ajudar a resolver esse problema de uma vez por todas! Adicionando as máscaras ao formulário Primeiro, você precisa baixar o</description><pubDate>Tue, 20 Feb 2024 23:29:36 GMT</pubDate></item><item><title>Executar ação após o pagamento ser confirmado no WooCommerce</title><link>https://eduardovillao.me/pt-br/executar-acao-apos-o-pagamento-ser-confirmado-no-woocommerce/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/executar-acao-apos-o-pagamento-ser-confirmado-no-woocommerce/</guid><description>Ai chega aquele requisito de executar uma ação apenas após a confirmação de pagamento do pedido (através do WooCommerce, é claro), como é que faz? Há algum tempo atrás precisei fazer isso e achei aqui nas minhas anotações esses dias, então resolvi compartilhar! O WooCommerce já tem uma action prontinha pra gente utilizar, e ela</description><pubDate>Wed, 22 Feb 2023 00:54:04 GMT</pubDate></item><item><title>Como centralizar o botão enviar do Contact Form 7</title><link>https://eduardovillao.me/pt-br/como-centralizar-o-botao-enviar-do-contact-form-7/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/como-centralizar-o-botao-enviar-do-contact-form-7/</guid><description>O contact form 7 é um dos plugins mais utilizados para formulário no WordPress. Ele tem um visual simples, mas tem milhares de possibilidades de customização. Alguns temas, plugins e até page builders trazem algumas opções de customização de estilo mais avançada para seus formulários. Mas, nem sempre você encontra exatamente o que gostaria. E</description><pubDate>Mon, 20 Feb 2023 23:33:26 GMT</pubDate></item><item><title>Como centralizar as tabs do Elementor?</title><link>https://eduardovillao.me/pt-br/como-centralizar-as-tabs-do-elementor/</link><guid isPermaLink="true">https://eduardovillao.me/pt-br/como-centralizar-as-tabs-do-elementor/</guid><description>Você já precisou utilizar o widget de tabs (ou Abas) do Elementor, e precisava centralizar as tabs, mas não achou essas opções no widget? Você não é o único! Tenho recebido com certa frequência essa dúvidas, então, sem muita enrolação, vamos pra solução! Como centralizar as tabs? É simples, você vai precisar utilizar um código</description><pubDate>Mon, 20 Feb 2023 23:31:56 GMT</pubDate></item></channel></rss>