Como Gerar um Shortlink no WordPress: Um Guia Técnico Completo
Os shortlinks do WordPress são URLs abreviados que redirecionam para um post, página ou tipo de post personalizado específico no seu site. Seguem o formato https://yourdomain.com/?p=POST_ID e são gerados nativamente pelo WordPress usando o seu sistema de reescrita de permalinks integrado — sem necessidade de serviço externo.
Este guia explica todos os métodos para gerar, personalizar e rastrear shortlinks do WordPress, incluindo fluxos de trabalho nativos do editor, comandos WP-CLI, soluções baseadas em plugins e comportamento de redirecionamento ao nível do servidor. Quer esteja a executar um ambiente partilhado simples ou uma configuração totalmente gerida de Alojamento VPS, as técnicas abaixo aplicam-se diretamente.
O Que São os Shortlinks do WordPress e Como Funcionam
O WordPress gera um shortlink para cada conteúdo no momento em que é guardado como rascunho ou publicado. O shortlink é construído a partir do parâmetro de string de consulta ?p= seguido do ID interno da base de dados do post. Este ID é atribuído sequencialmente pela tabela wp_posts no MySQL ou MariaDB e nunca muda, mesmo que altere posteriormente o slug ou a estrutura de permalinks do post.
Quando um visitante acede a um shortlink, o bootstrap index.php do WordPress carrega, o motor de reescrita analisa a string de consulta e o pedido é redirecionado internamente para o permalink canónico usando uma resposta HTTP 301 Moved Permanently. Isto significa que os shortlinks são seguros para SEO — os motores de busca seguem o 301 e atribuem toda a equidade de links ao URL canónico.
Factos técnicos principais:
- Os shortlinks são resolvidos inteiramente na camada de aplicação PHP/WordPress, não ao nível do servidor web.
- O parâmetro
?p=funciona independentemente da sua configuração de estrutura de permalinks. - Alterar o slug de um post não quebra o seu shortlink.
- Eliminar e recriar um post atribui um novo ID, o que invalida o shortlink antigo.
Método 1: Gerar um Shortlink no Editor Clássico
O Editor Clássico expõe um botão dedicado Obter Shortlink diretamente na caixa meta de publicação, posicionado acima da área do editor de posts.
Passo a passo:
- Abra ou crie um post no Editor Clássico.
- Guarde o post como rascunho ou publique-o — o shortlink não pode ser gerado para conteúdo não guardado porque ainda não existe nenhum ID de post.
- Clique em Obter Shortlink na caixa meta de publicação. Uma caixa de diálogo modal exibe o URL do shortlink.
- Copie o URL do campo da caixa de diálogo.
Se o botão Obter Shortlink não estiver visível, pode ter sido ocultado através das Opções de Ecrã. Clique no separador Opções de Ecrã no canto superior direito do ecrã do editor e certifique-se de que a opção Slug ou relacionada com shortlink está marcada. Alguns temas e plugins também removem este elemento de UI via remove_action('admin_head', 'wp_shortlink_header') ou filtram pre_get_shortlink para devolver uma string vazia.
Método 2: Gerar um Shortlink no Editor de Blocos Gutenberg
O editor Gutenberg removeu o botão de shortlink dedicado da UI padrão. No entanto, o shortlink ainda existe e é acessível através de duas abordagens.
Abordagem A — Construção manual a partir do ID do post:
- Abra o post no editor Gutenberg.
- Observe a barra de endereços do navegador. O URL conterá
post=XXXXondeXXXXé o ID numérico do post. - Construa o shortlink manualmente:
https://yourdomain.com/?p=XXXXSubstitua XXXX pelo ID real do post.
Abordagem B — Painel lateral de Definições do Post:
- Abra o post no Gutenberg.
- No painel de definições Post do lado direito, expanda a secção Permalink.
- O ID do post é visível no URL do editor. Algumas configurações também exibem o shortlink no painel Resumo se um plugin compatível estiver ativo.
Abordagem C — Restaurar o botão de shortlink via fragmento de código:
Se pretender o botão de shortlink de volta no Gutenberg, adicione o seguinte ao functions.php do seu tema ou a um plugin específico do site:
add_filter( 'get_shortlink', function( $shortlink, $id, $context, $allow_slugs ) {
return home_url( '/?p=' . $id );
}, 10, 4 );Este filtro garante que wp_get_shortlink() devolve sempre um valor, o que reativa a exibição do shortlink em componentes de UI compatíveis.
Método 3: Gerar Shortlinks via WP-CLI
Para administradores que gerem o WordPress na linha de comandos — particularmente num VPS com cPanel ou num Servidor Dedicado simples — o WP-CLI fornece uma forma direta de obter shortlinks sem aceder ao painel de controlo.
Obter o shortlink para um post específico por ID:
wp post get 42 --field=url --path=/var/www/htmlListar todos os posts publicados com os seus IDs e shortlinks:
wp post list --post_status=publish --fields=ID,post_title,post_name --format=tableDepois de ter o ID, o shortlink é simplesmente https://yourdomain.com/?p=ID. Também pode chamar a função do WordPress diretamente via WP-CLI eval:
wp eval 'echo wp_get_shortlink(42);'Isto produz a string do shortlink exatamente como o WordPress a serviria, respeitando quaisquer filtros ativos.
Método 4: Shortlinks Baseados em Plugins com Slugs Personalizados e Rastreamento
Os shortlinks nativos do WordPress usam o formato ?p=ID, que é funcional mas não memorável nem personalizável com marca. Os plugins estendem significativamente esta capacidade.
Pretty Links
Pretty Links é o plugin de shortlinks mais amplamente implementado no ecossistema WordPress. Armazena redirecionamentos personalizados numa tabela de base de dados dedicada (wp_pretty_link e wp_pretty_link_clicks) e fornece rastreamento de cliques, dados de geolocalização e injeção de parâmetros UTM.
Fluxo de trabalho de configuração:
- Instale e ative o Pretty Links a partir do repositório de plugins do WordPress.
- Navegue até Pretty Links > Adicionar Novo Link.
- Introduza o URL de destino (o permalink canónico do seu post).
- Defina um slug personalizado, por exemplo
go/my-post. - Selecione o tipo de redirecionamento:
301para permanente,302para temporário, ou307para temporário com preservação de método. - Guarde. O shortlink torna-se
https://yourdomain.com/go/my-post.
Nota técnica: As reescritas do Pretty Links são tratadas na camada de aplicação WordPress via add_rewrite_rule(), não ao nível do Apache ou Nginx. Isto significa que cada acesso ao shortlink incorre num bootstrap completo do WordPress. Em sites com muito tráfego, isto pode adicionar 50–200ms de latência por redirecionamento em comparação com um RewriteRule ao nível do servidor. Se o desempenho dos redirecionamentos for crítico, considere transferir links de alto volume para diretivas map do Nginx ou um microsserviço de redirecionamento dedicado.
ThirstyAffiliates
Para profissionais de marketing de afiliados, o ThirstyAffiliates fornece shortlinks com ocultação de cliques, ligação automática de palavras-chave e regras de redirecionamento baseadas em geolocalização. Armazena links em tipos de post personalizados (thirstylink) em vez de uma tabela separada, tornando-o compatível com fluxos de trabalho padrão de backup e migração do WordPress.
Plugin Redirection
O plugin Redirection gere tanto shortlinks como redirecionamentos gerais 301/302 a partir de uma única interface. Também captura erros 404 e sugere destinos de redirecionamento, o que é valioso durante migrações de sites.
Comparação: Métodos de Shortlink do WordPress
| Método | Slug Personalizado | Rastreamento de Cliques | Requer Plugin | Impacto no Desempenho | Melhor Caso de Uso |
|---|
| — | — | — | — | — | — |
|---|
| `?p=ID` nativo | Não | Não | Não | Mínimo | Partilha interna rápida |
|---|
| Botão do Editor Clássico | Não | Não | Não | Mínimo | Fluxo de trabalho legado |
|---|
| WP-CLI `wp eval` | Não | Não | Não | Nenhum (CLI) | Operações em massa, scripting |
|---|
| Pretty Links | Sim | Sim | Sim | Moderado (camada PHP) | Links com marca, marketing |
|---|
| ThirstyAffiliates | Sim | Sim (avançado) | Sim | Moderado (camada PHP) | Gestão de links de afiliados |
|---|
| Plugin Redirection | Sim | Básico | Sim | Moderado (camada PHP) | Migrações de sites, gestão de 404 |
|---|
| Diretiva `map` do Nginx | Sim | Não (ferramenta externa) | Não | Quase zero | Transferência de redirecionamentos de alto tráfego |
|---|
Considerações ao Nível do Servidor para o Desempenho dos Shortlinks
No alojamento partilhado, cada redirecionamento de shortlink passa pela pilha completa do WordPress: o PHP-FPM ou mod_php inicializa, wp-config.php carrega, a ligação à base de dados abre e o motor de reescrita resolve a consulta. Para tráfego baixo a moderado, isto é totalmente aceitável.
Em sites com muito tráfego ou ao executar milhares de shortlinks rastreados, a carga de consultas à base de dados proveniente do registo de cliques pode tornar-se um ponto de estrangulamento. As mitigações práticas incluem:
- Cache de objetos: Instale Redis ou Memcached e configure
WP_CACHEemwp-config.php. Isto coloca em cache a pesquisa do destino de redirecionamento e reduz significativamente as leituras da base de dados. - Registo de cliques assíncrono: Configure o Pretty Links para registar cliques de forma assíncrona usando um processo em segundo plano em vez de bloquear a resposta de redirecionamento.
- Redirecionamentos ao nível da CDN: Se utilizar o Cloudflare, pode implementar regras de redirecionamento em massa na extremidade, contornando completamente o WordPress para links de alto volume.
- Blocos map do Nginx: Para ambientes administrados pelo servidor, defina mapas de redirecionamento diretamente na configuração do Nginx:
map $request_uri $redirect_target {
/go/my-post https://yourdomain.com/full-canonical-url/;
/go/another https://yourdomain.com/another-post/;
}
server {
if ($redirect_target) {
return 301 $redirect_target;
}
}Esta abordagem serve redirecionamentos em microssegundos sem invocar PHP.
SSL, Segurança e Integridade dos Shortlinks
Os shortlinks servidos via HTTP e que redirecionam para destinos HTTPS são tecnicamente funcionais, mas expõem os utilizadores a uma potencial janela de downgrade. Certifique-se sempre de que o seu site WordPress tem um certificado SSL válido instalado para que os shortlinks sejam servidos a partir de https:// desde o início. Um shortlink de protocolo misto (http://yourdomain.com/?p=42 redirecionando para https://yourdomain.com/post-slug/) adiciona um salto de redirecionamento extra e pode acionar avisos de segurança do navegador em algumas configurações.
Se estiver a executar o WordPress na infraestrutura da AlexHost, combinar o seu site com um Certificado SSL devidamente emitido elimina completamente este problema e garante que todos os shortlinks resolvem através de uma única cadeia de redirecionamento 301 segura.
Além disso, os endpoints de shortlinks podem ser abusados em campanhas de phishing porque o destino está obscurecido. Se estiver a usar o Pretty Links ou um plugin semelhante, ative a opção noindex nas páginas de redirecionamento e considere adicionar um atributo rel="nofollow" a shortlinks partilhados externamente para evitar caminhos de rastreamento não intencionais.
Obter o ID do Post Programaticamente
Ao criar integrações personalizadas — por exemplo, gerar shortlinks dinamicamente numa resposta da REST API ou num modelo de email — use a função nativa do WordPress:
$post_id = get_the_ID(); // Inside The Loop
$shortlink = wp_get_shortlink( $post_id );
echo esc_url( $shortlink );Fora do Loop, passe o ID do post explicitamente:
$shortlink = wp_get_shortlink( 42 );A função wp_get_shortlink() aplica o filtro get_shortlink, o que significa que qualquer plugin ativo que modifique o comportamento dos shortlinks será respeitado automaticamente. Isto torna-a a função correta a usar em vez de concatenar manualmente home_url('/?p=') com um ID.
Matriz de Decisão: Escolher a Abordagem de Shortlink Correta
Use esta matriz para selecionar o método apropriado com base nos seus requisitos operacionais:
Use shortlinks ?p=ID nativos quando:
- Precisar de uma solução rápida e sem configuração para partilha interna ou testes.
- Não estiver preocupado com URLs com marca ou análises de cliques.
- Estiver num plano de Alojamento Web Partilhado com recursos limitados e quiser zero sobrecarga de plugins.
Use Pretty Links ou ThirstyAffiliates quando:
- Precisar de slugs curtos com marca e legíveis por humanos.
- O rastreamento de cliques, parâmetros UTM ou atribuição de conversões forem necessários.
- Estiver a gerir uma operação de marketing de conteúdo ou um site de afiliados.
Use diretivas map do Nginx ou regras de redirecionamento do Cloudflare quando:
- O volume de redirecionamentos exceder dezenas de milhares de acessos por dia.
- Precisar de latência de redirecionamento abaixo do milissegundo sem sobrecarga de PHP.
- Estiver a gerir infraestrutura diretamente num Servidor Dedicado ou VPS de alto desempenho.
Use WP-CLI quando:
- Estiver a criar scripts de operações em massa de posts ou migrações.
- Precisar de obter shortlinks programaticamente sem uma sessão de navegador.
Principais Conclusões Técnicas
- Cada post do WordPress tem um shortlink permanente em
/?p=POST_IDdesde o momento em que é guardado pela primeira vez; este ID nunca muda a menos que o post seja eliminado e recriado. - O editor Gutenberg removeu o botão de UI de shortlink mas não removeu a funcionalidade de shortlink — a função
wp_get_shortlink()e o parâmetro?p=permanecem totalmente operacionais. - Os shortlinks baseados em plugins (Pretty Links, ThirstyAffiliates) operam na camada de aplicação PHP; para cenários de alto tráfego, transfira os redirecionamentos para o Nginx ou uma regra de extremidade CDN.
- Sirva sempre os shortlinks via HTTPS para evitar cadeias de redirecionamento com múltiplos saltos e potenciais avisos de segurança.
- Use
wp_get_shortlink()no código personalizado em vez de construir manualmente o URL, para que os filtros de plugins ativos sejam respeitados. - O registo de cliques assíncrono e o cache de objetos Redis são as duas otimizações de maior impacto para sites com tráfego intenso de shortlinks.
- Audite periodicamente o crescimento da tabela de base de dados do seu plugin de shortlinks —
wp_pretty_link_clickspode acumular milhões de linhas em sites ativos, degradando o desempenho das consultas sem indexação adequada.
Perguntas Frequentes
Alterar o slug do permalink de um post quebra o seu shortlink?
Não. O shortlink está vinculado ao ID da base de dados do post, não ao seu slug. Alterar o slug atualiza o URL canónico, mas o shortlink ?p=ID continua a resolver corretamente via um redirecionamento 301 para o novo permalink canónico.
Por que razão o botão Obter Shortlink está ausente no meu editor WordPress?
No Gutenberg, o botão foi removido da UI padrão. Também pode estar oculto no Editor Clássico via Opções de Ecrã, ou suprimido por um plugin usando o filtro pre_get_shortlink que devolve uma string vazia. Use wp eval 'echo wp_get_shortlink(POST_ID);' via WP-CLI para obter o shortlink independentemente do estado da UI.
Os shortlinks do WordPress afetam o SEO?
Os shortlinks nativos usam redirecionamentos HTTP 301 para o URL canónico, pelo que os motores de busca seguem o redirecionamento e atribuem todos os sinais de classificação ao permalink canónico. Os próprios shortlinks não são indexados. Certifique-se de que o seu plugin de shortlinks não define acidentalmente páginas de redirecionamento como 200 OK com conteúdo escasso, o que poderia criar problemas de indexação.
Qual é a diferença entre um shortlink do WordPress e um encurtador de URL como o Bitly?
Os shortlinks do WordPress são auto-alojados e resolvem no seu próprio domínio, preservando a confiança na marca e mantendo as análises dentro da sua infraestrutura. Os encurtadores de terceiros como o Bitly encaminham o tráfego através de um domínio externo, introduzindo uma dependência de um serviço de terceiros e potencialmente obscurecendo a sua marca em links partilhados.
Os shortlinks podem ser usados em respostas da REST API do WordPress?
Sim. Chame wp_get_shortlink( $post->ID ) dentro de um callback de endpoint REST API personalizado ou use o filtro rest_prepare_post para anexar o campo de shortlink às respostas padrão de posts. Isto é útil para configurações WordPress headless onde a aplicação front-end precisa de um URL curto partilhável sem o construir do lado do cliente.
