desenvolvimento para web

URLs amigáveis (slug) à WordPress

URLs amigáveis (slug) WordPress

O desenvolvimento web em WordPress é excelente! O CMS já vem com diversas funções e funcionalidades para facilitar a vida de desenvolvedores e, até mesmo, de pessoas que não tem o mínimo conhecimento em programação (um dos objetivos é esse, mesmo).

Mas muitos desenvolvedores, principalmente os ainda incipientes, esquecem que o WordPress nada mais é do que PHP! Claro, o WP é nada mais, nada menos, que um sistema feito em PHP, como você e eu poderíamos ter feito. Mas, por motivos que me fogem ao conhecimento, as pessoas esquecem isso… Talvez o nível de abstração em programação que o CMS proporcione seja o “culpado”, mas, sinceramente, não tenho certeza.

Então, se você tiver a curiosidade de vasculhar os arquivos PHP que fazem do WordPress o que ele é, vai ter uma grata surpresa e encontrar uma rica fonte de scripts, funções e funcionalidades que você sempre quis implementar e não sabia como!  :-D

URLs amigáves à WordPress

Por exemplo, muitos querem implementar uma estrutura de URLs amigáves (gerar os famosos “slugs”) em sistemas desenvolvidos do zero  – seja através de frameworks ou em PHPU (“PHP Unha”) -, mas não sabem como. Ora, se sabemos que o WordPress possui um ótimo sistema de geração de slugs e temos acesso a seu código-fonte, tudo o que é preciso é vasculhar o código-fonte e encontrar as funções certas.

Seguindo o exemplo de gerar slugs, procurando um pouco, é possível saber que as funções necessárias se encontram em /wp-includes/formatting.php. E, como era de se esperar, as funções estão devidamente documentadas com seu escopo, parâmetros e retorno. Precisa de mais?

Para gerar URLs amigáveis à WordPress, são necessárias 4 funções. 3 “preliminares” que são:

E, com essas funções devidamente estabelecidas, a função que gera os slugs, propriamente dita:

Então, para gerar um slug em seu próprio sistema depois de implementar as funções mostradas, basta escrever:

1
sanitize_title_with_dashes($var);

Achou o nome da função grande ou feio? Você tem o código, altere como bem entender!

Considerações finais

O WordPress é software livre (registrado sob a licença GPL), então você pode pegar essas 4 funções e implementar em seu site/sistema/softwares sem o medo de receber uma cartinha do advogado da equipe WordPress amanhã ou depois.

Fica uma pergunta: você tem um software livre à disposição e fica quebrando a cabeça em busca de soluções de código que já existem e estão implementadas nele? Vasculhe todo o código fonte (veja alguns recursos que ajudam no artigo sobre ferramentas e recursos para desenvolvimento web) e procure por aquilo que vai lhe ser útil!

Não seja tímido! ;-)

18 interações em "URLs amigáveis (slug) à WordPress"

  1. otimizar site23/07/2010 

    Boa informaçao, alias urls amigaveis é de uma importancia muito grande aos buscadores.

  2. Chops - Opreh23/07/2010 

    Nossa, muito bom, sou desenvolvedor e sempre pesquisei sobre isso mas realmente é complexo de achar na internet, parabéns pelo post, vai ajudar realmente muita gente!

  3. Tárcio Zemel26/07/2010 

    @ otimizar site,

    @ Chops – Opreh

    URLs amigáveis auxiliam, sim, um bom posicionamento as SERPs dos mecanismos de busca (embora o mais importante seja o conteúdo). Obrigado pela participação!

  4. Mauro George26/07/2010 

    Fala Tárcio,

    excelente artigo, o WordPress é uma excelente ferramenta para se aproveitar códigos. Baseado no seu artigo criei uma classe[1] que encapsula as funções do wordpress citadas, além da classe criei também alguns testes[2]. Pode ser útil pra galera.

    Outra função que utilizo bastante é a wpautop, que gera parágrafos baseados em quebra de linhas, algo como a nl2br do PHP só que semântica criando parágrafos e quebras de linha. Quem sabe uma idéia pra fazer um post sobre o assunto.

    Abraço

    [1] – http://pastebin.com/7nf6Skr8
    [2] – http://pastebin.com/FBHnj2mU

  5. Mingo27/07/2010 

    Bem bacana sua explicação, o WordPress é uma enciclopedia de programação tem muita coisa bacana! O legal é também você entender o WordPress e começara a controbuir com códigos! Nisso você aprende muito mais.

    Parabéns pelo excelente post.

  6. Tárcio Zemel15/08/2010 

    @ Mauro George

    Opa, excelente contribuição para a comunidade WordPress! ;-)

    @ Mingo

    É isso, aí! O "segredo" é abrir os arquivos do WP para estudar tudo o que se tem dúvida e/ou se quer aprender como se faz. Abraços!

  7. Massacremam25/08/2010 

    Obrigado amigão, salvou o dia aqui!!!

  8. Chiquinho03/09/2010 

    Ótimo Post, já copiei tudo xD

  9. Tárcio Zemel09/09/2010 

    @ Massacremam,

    @ Chiquinho

    Que bom que a informação foi útil! Mexam bastante nos arquivos do WP que vão encontrar muitas surpresas agradáveis! ;-)

  10. Chops - Opreh24/09/2010 

    Como ja disse acima, mto bom post, só gostaria de aprender como fazer funcionar uma url amigavel…

    tipo…a reescrita, aonde eu faço e tudo mais…seria um bom post ;D

    PAZ

  11. Tárcio Zemel05/10/2010 

    @ Chops – Opreh

    Sugestão anotada! Pode contar que, em breve, sai esse artigo! ;-)

  12. Rafael23/10/2010 

    Valeu cara! Tava procurando que nem louco isso!

  13. Tárcio Zemel24/10/2010 

    De nada, Rafael! Se tiver alguma sugestão de conteúdo, basta dizer! Abraços!

  14. Pedro Rogério29/05/2011 

    Muito bom Tárcio, agora só falta fazer um post com esses códigos em ação.

  15. Tárcio Zemel05/06/2011 

    Obrigado, Pedro! Dentro em breve o artigo ensinando a implementação. ;-)

Comente!

A definição de "insanidade" é fazer sempre a mesma coisa e esperar um resultado diferente.

Albert Einstein
Quer ganhar 1 ano grátis da Conta Negócios Basekit, uma das melhores ferramentas de criar sites do mundo? Saiba como!