Shortcodes


Surgiu uma tarefa aqui no site que era criar uma página de administração que pudesse listar diversos links para as diversas páginas que necessito acessar com freqüência, tipo hospedagem, tipo administração de domínio. No meu caso é uma forma de reunir diversas tarefas criando um lembrete e facilitando o acesso.

Eu resolvi criando uma “Page Template” e alterei o código acrescentando uma linha:

?php wp_list_bookmarks(category=10);?>

Essa linha passou a listar, após o conteúdo, uma lista de links. Mas aí surgiu um outro problema, tornar a página inacessível. Daí coloquei senha via página do WordPress, mas não adiantou pois a senha protege o conteúdo da página mas não os elementos do template.

Sei que existe outras formas de restringir o acesso a uma página estática, por exemplo, testando quem está logado antes de mostra-la. Mas me deparei com alguns artigos descrevendo sobre a “Shortcode API”.

http://wpengineer.com/wordpress-shortcode-api/

http://muiomuio.net/funcao-que-permite-inserir-facilmente-anuncios-adsense-nos-posts/

http://www.wprecipes.com/how-to-save-time-by-using-wordpress-shortcodes

Os links acima são apenas alguns exemplos, mas uma pesquisa no Google pode trazer mais informações, o Codex e tutoriais.

Ainda sim esse recurso pode não agradar a todos, já que exige uma alteração no arquivos functions.php do template. No caso de não existir no seu tema, crie um na pasta do template. No meu caso acrescentei as seguintes linhas de código:

// [teste]
function teste_func() {
return wp_list_bookmarks('category=10');
}
add_shortcode('teste', 'teste_func');

Explicando:
Primeira linha é um comentário com a sintaxe do comando.
“function” cria uma função com nome “teste_func”
“return” tem o comando que desejo executar
“add_shortcode” associa a função ao seu nome (sintaxe)

Ao colocar [teste] em qualquer post ou página o WordPress, dinamicamente esse “shortcode” é substituído pela lista de links da categoria id=10.

A função pode aceitar entrada de parâmetros, pode ser feito uma lista de comandos, mas como não sou programador deve pesquisar mais como fazê-lo. Esse recurso é ainda muito pouco explorado. Existem poucas referencias e tutoriais sobre o mesmo, e os exemplos não são claros.

Apesar disso eu visualizei um bom recurso para ser usado no WordPress como CMS. Com a correta construção das funções e seus shortcodes, você pode inserir qualquer tipo de código em php no corpo do post ou página estática com a vantagem de se tratar de informação dinâmica, estará sempre atualizada em relação ao banco de dados. As possibilidades são muitas, veja a página abaixo:

http://allbusinessauctions.com/blog/2008/07/27/wordpress-shortcodes-shortcuts-for-features/

São exemplos de shortcodes, mas não funcionaram aqui, pois acredito que sejam exclusivos do wordpress.com, mas já dá uma idéia do poder de fogo que tal recurso tem.

Uma resposta para “Shortcodes”

  1. […] Shortcodes […]

Comente