Desde que a versão do wordpress 3.3 saiu que o plugin sniplet deixou de funcionar a 100%.
Um dos erros mais aborrecidos é não deixar utilizar o media upload na área de edição e criação de posts, e como o plugin não irá ter mais actualizações tudo indica que o erro não será corrigido.
O Sniplet é um plugin para o wordpress que permite criar uma porção de código ou texto e registá-lo como sniplet, depois basta usar o nome para este ser inserido em posts ou páginas.
É útil quando temos de repetir certos textos em vários posts.
Por exemplo, temos de colocar em vários posts ou páginas a seguinte frase “Todos os valores já têm iva incluído à taxa de 23%.”, regista-se a frase como sniplet com o nome “iva-incluido” e depois bastaria colocar [sniplet iva-incluido] em cada post ou página que queremos mostrar a frase.
Qualquer alteração no texto é feita directamente no sniplet, alterando de imediato em todos os posts.
Esta pequena introdução é desnecessária para quem conhece e usa o plugin e é para esses que esta solução dará jeito.
Como utilizador deste plugin em vários sites, e que em cada site posso ter mais de 30 sniplets, foi urgente arranjar uma solução.
A solução que arranjei foi criar uma rotina que irá usar a base de dados dos sniplet já feitos e os atalhos nos posts.
O código intercepta os shortcodes sniplet inscritos nas páginas ou posts e faz o que o plugin faz nesta situação, insere o código.
Este código é adicionado ao ficheiro “functions.php” do seu tema.
Tenha em atenção que deve desactivar o plugin “Sniplet” e não eliminar, se eliminar ou desinstalar o plugin todos os seus sniplets serão eliminados.
add_shortcode("sniplet", "GetSniplet");
function GetSniplet($atts)
{
global $wpdb;
$snipplet_name = $atts[0];
$texto_html = $wpdb->get_row(
"SELECT * FROM {$wpdb->prefix}sniplets WHERE name=\"$snipplet_name\""
);
$conteudo = $texto_html->contents;
return $conteudo;
}
Este código vem sem nenhuma garantia, a escolha é sua se o vai utilizar ou não. Não tem qualquer controle de erro.
No meu caso funciona a 100%.