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"
Configuração de rotas (routes) no CodeIgniter | CodeIgniter Brasil
Como fazer loading em conteúdos do site | desenvolvimento para web
Boa informaçao, alias urls amigaveis é de uma importancia muito grande aos buscadores.
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!
@ 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!
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
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.
@ 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!
Obrigado amigão, salvou o dia aqui!!!
Ótimo Post, já copiei tudo xD
@ Massacremam,
@ Chiquinho
Que bom que a informação foi útil! Mexam bastante nos arquivos do WP que vão encontrar muitas surpresas agradáveis! ;-)
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
@ Chops – Opreh
Sugestão anotada! Pode contar que, em breve, sai esse artigo! ;-)
Valeu cara! Tava procurando que nem louco isso!
De nada, Rafael! Se tiver alguma sugestão de conteúdo, basta dizer! Abraços!
Muito bom Tárcio, agora só falta fazer um post com esses códigos em ação.
Obrigado, Pedro! Dentro em breve o artigo ensinando a implementação. ;-)