Skip to content

Tudo para WordPress, desenvolvimento web — e não só

Em que linguagem de programação é escrito o WordPress

Em que linguagem de programação é escrito o WordPress

Quando as pessoas perguntam em que linguagem o WordPress é escrito, há quase sempre outra pergunta por detrás: «Por onde devo começar se quiser percebê-lo?» Essa é a abordagem certa.

O desenvolvimento em WordPress não é magia nem um clube exclusivo. É um conjunto de cinco tecnologias, quatro das quais são familiares a qualquer programador de front-end. A quinta, o PHP, gere o núcleo, os temas, os plugins e toda a lógica do lado do servidor. Mas não vai aprender «uma linguagem». Precisa de perceber como elas funcionam em conjunto e a ordem certa para as aprender.

💡 Visão geral rápida:

  • O núcleo do WordPress é escrito em PHP. Os dados residem em MySQL. Este é o lado do servidor, oculto do utilizador.
  • No navegador, a página é construída a partir de HTML (estrutura), CSS (estilo) e JavaScript (interatividade): três tecnologias de front-end.
  • Aprenda o conjunto por esta ordem: HTML, depois CSS, depois PHP, depois JavaScript, depois SQL. Do simples para o complexo.

PHP, o motor do WordPress

O núcleo do WordPress é composto por dezenas de milhares de linhas de código PHP. Quando um navegador solicita uma página, o servidor executa scripts PHP, obtém dados da base de dados, passa-os pelos modelos do tema e devolve HTML pronto. O utilizador nunca vê o código PHP; recebe a página já montada.

Exemplo de código PHP com variáveis e lógica condicional

O PHP no WordPress funciona como um maestro: «orquestra» o HTML, chama funções da base de dados, insere configurações do painel de administração e monta a página final. Qualquer modelo de tema é um ficheiro PHP com HTML incorporado. Qualquer plugin é um ficheiro PHP que se liga ao núcleo através de add_action e add_filter.

Sem PHP, o WordPress simplesmente não funciona. Portanto, a resposta à pergunta do título é clara: o WordPress é escrito em PHP. Mas essa não é a única linguagem de que um programador precisa.

HTML, o esqueleto de cada página

O HTML não é uma linguagem de programação; é uma linguagem de marcação. Não «calcula»; descreve a estrutura: onde está o título, onde está o parágrafo, onde está a imagem, onde está o botão. O navegador lê a marcação HTML e transforma-a numa página visível.

No WordPress, o HTML não é armazenado como ficheiros separados. Os modelos de tema são escritos em PHP, mas produzem HTML. Quando edita uma página no Gutenberg, o editor guarda o conteúdo na base de dados, mas os visitantes continuam a receber HTML.

1<html>
2 <head>
3 <meta charset="UTF-8" />
4 <title>Page title in search</title>
5 </head>
6 <body>
7 <h1>Page heading</h1>
8 <p class="intro">Introduction paragraph text</p>
9 </body>
10</html>

A característica principal do HTML são as tags. Cada tag tem o seu papel. <h1> é um título de primeiro nível. <p> é um parágrafo. <a> é uma hiperligação. Uma tag de fecho com uma barra (</h1>) mostra onde o elemento termina. Algumas tags, como <meta> ou <img>, são de fecho automático: não precisam de um par.

As tags HTML podem ter classes: class="intro" no exemplo acima. Uma classe é uma «âncora» para o CSS. O navegador encontra todos os elementos com essa classe e aplica os estilos do ficheiro CSS.

Resumindo: o HTML define o quê que o utilizador vê na página. Mas o aspeto é determinado pelo CSS.

CSS, a roupa de um site

CSS significa Cascading Style Sheets (Folhas de Estilo em Cascata). Se o HTML dá estrutura à página, o CSS dá-lhe cor, tipos de letra, espaçamento, posicionamento de blocos e capacidade de resposta em dispositivos móveis.

Código CSS com regras para classes HTML

Sem CSS, qualquer site parece uma folha branca com texto preto e hiperligações azuis. Estilos de títulos, grelhas de colunas, animações, sombras, cantos arredondados: tudo isso é CSS.

No WordPress, o CSS reside nos ficheiros do tema (normalmente style.css). Todos os temas têm de ter este ficheiro; sem ele, o WordPress não reconhece o tema. Os plugins também podem carregar os seus próprios ficheiros CSS através do mecanismo wp_enqueue_style().

1.intro {
2 color: #325050;
3 background: #fff;
4 font-family: 'Libre Baskerville', serif;
5 font-size: 0.85rem;
6 line-height: 1.6;
7}

O ponto antes de .intro significa: «aplica estes estilos a TODOS os elementos com a classe intro». Isto é a cascata: uma classe, muitos elementos em páginas diferentes. Altera a regra num só local e todo o site é atualizado.

Para o desenvolvimento moderno em WordPress, precisa de conhecer não só CSS básico, mas também layouts responsivos usando media queries. Temas sem responsividade não sobrevivem hoje em dia; o Google classifica os sites usando uma abordagem mobile-first.

JavaScript, o comportamento da página

O JavaScript é a única das cinco tecnologias sem a qual o WordPress pode tecnicamente funcionar. Um tema pode funcionar plenamente sem uma única linha de JS. Mas, na prática, nenhum site moderno dispensa o seu uso.

O JavaScript trata do que acontece depois de a página carregar: menus suspensos, janelas modais, carregamento diferido de imagens, validação de formulários antes do envio, mudança de tema sem recarregar. Tudo o que responde a ações do utilizador (clique, deslocamento, introdução de texto) depende de JS.

1(function($) {
2 var navMenu = '.primary-navigation';
3 var pageContent = '.main-content';
4 var gap = parseInt($('html').css('font-size'), 10) * 2;
5
6 function setPageMin() {
7 var height = $(navMenu).height();
8 $(pageContent).css('min-height', height + gap);
9 }
10
11 $(window).on('load', function() {
12 setPageMin();
13 $(window).on('resize', function() {
14 setTimeout(setPageMin, 120);
15 });
16 });
17})(jQuery);

Este exemplo em jQuery mostra uma tarefa típica: calcular a altura da navegação e definir uma altura mínima para a área de conteúdo, para que a página não «salte». O código é executado ao carregar e em cada redimensionamento da janela.

Mas o maior impacto do JavaScript no WordPress veio com o Gutenberg, o editor de blocos escrito em React. Toda a interface de edição de artigos, todos os blocos (parágrafo, título, galeria, colunas), é uma aplicação JavaScript a correr dentro da administração do WordPress.

É por isso que hoje um programador de WordPress que ignore completamente o JavaScript fica bastante limitado. Pode construir um tema, mas não pode escrever blocos Gutenberg personalizados sem JS.

SQL e MySQL, onde os dados residem

Artigos, páginas, configurações, utilizadores, comentários, campos meta: todo o conteúdo do WordPress é armazenado numa base de dados MySQL (ou MariaDB). O PHP comunica com a base de dados através de consultas SQL, mas os programadores raramente precisam de escrever SQL «puro».

O WordPress fornece a sua própria camada de abstração, a classe wpdb. Chamadas como get_posts(), update_post_meta() e WP_Query já contêm consultas SQL prontas no seu interior. Isto protege contra erros comuns e injeção de SQL, desde que utilize os métodos integrados em vez de escrever consultas manuais.

Ainda assim, compreender SQL é útil: quando um projeto cresce para dezenas de milhares de artigos e as consultas começam a ficar lentas, a capacidade de ler EXPLAIN e encontrar um índice em falta é inestimável.

Como um tema WordPress é estruturado

Um tema WordPress não é um monólito. É um conjunto de ficheiros PHP, cada um responsável por um tipo de página diferente. O index.php trata da página inicial e de tudo por defeito. O single.php trata de artigos individuais. O page.php trata de páginas estáticas. O archive.php trata de arquivos de categorias. O WordPress seleciona automaticamente o modelo certo com base numa hierarquia chamada Hierarquia de Modelos.

Dentro de cada modelo: funções PHP padrão do núcleo do WordPress. the_title() produz o título. the_content() produz o corpo do artigo. wp_nav_menu() produz o menu. A lista completa está disponível na documentação do WordPress. HTML e PHP estão misturados nos temas: abre-se <?php, chama-se uma função, fecha-se ?>, continua-se com HTML. Não é uma arquitetura ideal para os padrões modernos, mas alimenta mais de 40% dos sites na internet.

Para criar um tema, precisa de saber PHP, HTML e CSS, no mínimo. JavaScript é opcional, mas útil para elementos interativos (menu móvel, separadores, acordeões).

Como um plugin WordPress é estruturado

Um plugin é um ficheiro PHP (pelo menos um) com um cabeçalho de comentário especial no início. Neste comentário, o WordPress lê o nome, a versão e o autor: tudo o que vê na administração, na página de plugins.

Um plugin interage com o núcleo através de hooks. Existem dois tipos:

  • Actions (add_action) executam código em momentos específicos: quando uma página carrega, quando um artigo é guardado, quando um plugin é ativado.
  • Filters (add_filter) intercetam e modificam dados: alterar texto, adicionar uma classe CSS, substituir um URL.

O plugin mais simples é literalmente umas poucas linhas:

1<?php
2/**
3 * Plugin Name: Greeting Plugin
4 * Description: Adds a greeting at the end of every post.
5 * Version: 1.0
6 */
7
8function my_greeting($content) {
9 if (is_single()) {
10 $content .= '<p>Thank you for reading our blog!</p>';
11 }
12 return $content;
13}
14add_filter('the_content', 'my_greeting');

Vê o add_filter? É exatamente assim que os plugins do WordPress estendem a funcionalidade: não editando o núcleo (o que é estritamente proibido), mas intercetando dados através de hooks. É por isso que as atualizações do WordPress não quebram o código personalizado, desde que o programador tenha usado a API oficial em vez de modificar ficheiros do núcleo.

WordPress e Node.js: nenhuma substituição a caminho

Os rumores de que o WordPress está «a mudar para Node.js» circulam desde 2015, quando o Calypso apareceu. O Calypso é uma interface de administração de desktop para o WordPress.com, escrita em Node.js e React. Depois veio o Gutenberg, também em React. O JavaScript tornou-se mais visível e alguns concluíram que o PHP estava com os dias contados.

Isso não é verdade. A posição oficial do WordPress mantém-se inalterada: o núcleo permanece em PHP. Ninguém planeia reescrever uma base de código com 20 anos em Node.js; seria inútil e quebraria a compatibilidade retroativa com milhares de temas e plugins.

O que realmente aconteceu: o WordPress tornou-se uma plataforma híbrida. Backend: PHP e MySQL. Front-end de administração: JavaScript (React). Site público: HTML, CSS e algum JS. A REST API, integrada no núcleo desde a versão 4.7, permite que aplicações JavaScript comuniquem com o WordPress sem recarregar páginas. Isto abriu a porta a soluções headless, onde o WordPress funciona como um CMS headless no backend enquanto o front-end é construído em Next.js ou Gatsby.

Conclusão: aprender Node.js e React para trabalhar com WordPress é útil, mas não em vez de PHP. Aprenda-os a par do PHP.

Por onde começar a aprender WordPress

O percurso de aprendizagem vai do simples ao complexo, do que o utilizador vê no navegador ao que acontece no servidor.

Passo 1: HTML. Sem compreender tags, atributos e estrutura do documento, não faz sentido avançar. O HTML é o alfabeto da web. Felizmente, as bases podem ser aprendidas numa semana.

Passo 2: CSS. Assim que a página tem estrutura, precisa de estilo. Aprenda o modelo de caixa, posicionamento, flexbox, grid e media queries. Sem layouts responsivos, não pode construir um tema WordPress.

Passo 3: PHP. Agora, a parte mais importante. Aprenda PHP no contexto do WordPress: como funcionam as funções do núcleo, o que é o ciclo WP_Query, como está estruturada a hierarquia de modelos. É necessário um conhecimento genérico de «PHP em geral» como base, mas concentre-se no que vai realmente encontrar em temas e plugins.

Passo 4: JavaScript. Comece pelo simples: jQuery para manipulação do DOM e tratamento de eventos. Depois, JavaScript moderno (ES6+), seguido de React para blocos Gutenberg personalizados.

Passo 5: SQL. Não escreva consultas manualmente a menos que seja absolutamente necessário, mas seja capaz de ler e compreender o que acontece nos bastidores do WP_Query. Em projetos grandes, isto poupará horas de depuração.

A ordem é importante. Se começar com JavaScript ignorando o PHP, conseguirá escrever blocos Gutenberg, mas não conseguirá construir um tema. Se começar com PHP sem HTML/CSS, terá código do lado do servidor, mas nada para mostrar ao utilizador. Siga o percurso e, dentro de alguns meses, será capaz de construir um tema completo de raiz.

⁉️🤔 Perguntas frequentes

Preciso de saber as cinco linguagens para criar um tema WordPress?

Para construir um tema simples, PHP, HTML e CSS são suficientes. O JavaScript é necessário para elementos interativos: menu móvel, slider, carregamento diferido. O SQL não é essencial no início, uma vez que as funções prontas do núcleo ocultam as consultas à base de dados. Mas para projetos complexos e otimização, não pode prescindir de JS e SQL.

Posso tornar-me um programador WordPress sabendo apenas JavaScript?

Não. O núcleo, os temas e os plugins funcionam em PHP. O JavaScript é útil para blocos Gutenberg e interatividade no front-end, mas sem PHP não pode criar nem o plugin mais simples. JavaScript e PHP no WordPress são parceiros, não concorrentes.

É verdade que o WordPress vai mudar completamente para JavaScript em breve?

Não. A posição oficial da equipa do WordPress: o núcleo permanece em PHP. O JavaScript estende as capacidades (Gutenberg, REST API), mas não substitui o PHP no lado do servidor. As preocupações surgiram devido à presença crescente do React no painel de administração, mas isso é evolução, não substituição da plataforma.

Quanto tempo demora a aprender desenvolvimento WordPress de raiz?

Com uma abordagem sequencial (HTML → CSS → PHP → JS → SQL) e prática diária, conte com 4 a 8 meses para atingir o nível em que consegue construir com confiança um tema personalizado e um plugin simples. As primeiras duas semanas são apenas HTML e CSS. Depois disso, o PHP ocupará a maior parte do seu tempo, porque tudo depende dele.

Tenho de aprender jQuery ou posso ir diretamente para React?

O jQuery ainda é usado na maioria dos temas WordPress e está integrado no núcleo; conhecê-lo ajuda na manutenção de projetos legados. Mas para desenvolvimento novo (especialmente blocos Gutenberg), aprenda React. Comece com JavaScript moderno (ES6+), depois React: esse é o caminho mais preparado para o futuro.

Vale a pena aprender WordPress em 2026

Resposta curta: sim. O WordPress alimenta mais de 43% de todos os sites na internet, e este valor tem-se mantido estável no intervalo de 43-44% nos últimos anos. A procura por programadores que compreendam mais do que «clicar no botão de instalar tema» e que saibam escrever funcionalidades personalizadas em PHP mantém-se consistentemente alta.

A chave é a ordem certa. HTML e CSS dão-lhe uma base em poucas semanas. O PHP abre o acesso ao núcleo, hooks e plugins. O JavaScript acrescenta interatividade e potencial de crescimento (Gutenberg, headless, React). O SQL completa o quadro ao nível da base de dados.

Comece pelo primeiro passo e, dentro de seis meses, verá o WordPress não como um «construtor de sites», mas como uma plataforma poderosa que controla a todos os níveis, da tag HTML ao índice SQL.