Quando escrevi o tutorial de criação de um bloco de destaques, acabei com um pequeno problema na mão.
Esse tema usa o Widgets para controlar a barra lateral, porém, por padrão, o plugin não aceita que seja inserido código PHP.
Assim fiquei com o bloco de destaques somando um espaço enorme no topo, fazendo com que os leitores tenham que rolar muito a página até encontrar o conteúdo.
Eu teria duas opções para resolver o problema:
A primeira opção seria complicada, pois eu perderia a flexibilidade e teria que colocar ou no início ou no fim da coluna.
Em nenhum dos casos, eu atenderia meu objetivo, já que ou empurraria a barra toda para baixo e não poderia deixar em primeiro lugar o que eu quero ou colocaria no final da barra, onde perderia sentido de ser.
Já a segunda opção seria a mais viável, se eu não estivesse sem tempo (e com um pouco de preguiça, para falar a verdade).
Vou criar este Widget, sim, mas mais para frente.
Tinha urgência de resolver o problema do local do blog.
Foi então que em uma rápida pesquisa achei o Widgetize Anything.
O funcionamento dele é quase idêntico aos text widgets, com a grande diferença que posso escrever códigos em PHP dentro dos mesmos.
Instalar é muito simples, basta:
A configuração é muito simples, basta definir quantos widgets você quer nas opções, coloquei 10 para deixar alguns de folga (estou usando 4), ter vários não aumenta o consumo de recursos (pelo menos não senti diferença), mas não é bom exagerar.
Agora vamos a parte legal, usar o plugin.
O código PHP é executado possui algumas limitações, portanto não podemos usar exatamente o mesmo código apresentado antes, precisaremos fazer algumas alterações, como abaixo:

Como podem notar no código as principais diferenças são:
O primeiro item não é possível, pois o plugin pega tudo que está escrito na parte do código e envia para o PHP executar, caso fizéssemos a mistura, correríamos grandes riscos de quebrar a execução, isso se chegasse a funcionar (nem testei).
Usando funções que imprimam valores diretos funcionaria, mas tornaria o código um pouco confuso.
Já a questão de passar os parâmetros para as funções é necessário, pois o WordPress não consegue tratar isso como um loop, se eu não tivesse feito essas alterações, ele pegaria o primeiro artigo do loop da página que está para executar as funções.
Mesmo com essas limitações, o plugin é de grande valia.
Já aproveitei para colocar 4 com os seguintes conteúdos:
Não consigo simpatizar com os widgets. Estou usando no Desconexidades por falta de opção, mas ainda prefiro editar o código “na unha”, para ter certeza do que vai acontecer. Sem contar que sempre fico na dúvida se os widgets não deixam o blog mais lento…
Lu, eu não conseguiria viver sem eles.
Estou sempre mudando a lateral e fazer isso na mão é muito chato.
Quanto ao desempenho, não sinto qualquer diferença.
Abraço
Muito bom! Trabalho com PHP já há algum tempo e achei o artigo muito interessante. Quanto ao desempenho também não senti diferença.
André, obrigado.
Abraço
[...] quem utiliza o Sidebar Widgets, pode usar o Widgetize Anything e colocar o código abaixo: PLAIN TEXT [...]
Bruno.
Teus comentários estão com um monte de warnings:
Warning: preg_match() [function.preg-match]: Empty regular expression in /home/brpointn/domains/brpoint.net/public_html/wp-content/plugins/avatar_blogblogs.php on line 45
Warning: preg_match() [function.preg-match]: Empty regular expression in /home/brpointn/domains/brpoint.net/public_html/wp-content/plugins/avatar_blogblogs.php on line 46
Warning: preg_match() [function.preg-match]: Empty regular expression in /home/brpointn/domains/brpoint.net/public_html/wp-content/plugins/avatar_blogblogs.php on line 47
Jânio, valeu e desculpe a demora.
Estava desenvolvendo um plugin.
Tenho que aprender a não fazer isso em ambiente de produção…
Abraço
não estou conseguindo fazer isso com o Top Commentators.
coloquei os ‘echos’ mas mesmo assim dá erro.
Nossa, exatamente o meu problema, eu tava tentando colocar os destaques com o Widgetize Anything e não estava dando certo, muito obrigado, abraços.
Anderssauro, estou usando o seguinte código, para exibir o top commentators:
[PHP]
echo ‘
‘;
ns_show_top_commentators();
echo ‘
‘;
[/PHP]
Dario, que bom que ajudou.
Abraços
Excelente artigo sobre o plugin do WordPress. E é por isso mesmo que peço ajuda. Não estou conseguindo usar o plugin, pois tenho o mal habito de mesclar html com php. Como é que eu insiro uma imagem com código php?
Obrigado
Rodrigo