Uma das áreas mais interessantes do WordPress é seguramente a área dos truques e dicas. Pequenos códigos que muitas vezes poupam horas e horas de programação, da mesma forma que tornam todo e qualquer blog WordPress mais funcional, mais lógico, etc. Muitos destes pequenos códigos conseguem inclusivamente melhorar drasticamente a Navegabilidade e Usabilidade de um blog. Como sou um fã dos shortcodes e dos truques para WordPress, gostaria lhe propor mais 10 truques que seguramente o vão ajudar imenso na obtenção de pequenos pormenores ao nível da funcionalidade do seu blog.
Se gosta de truques para WordPress, recomendamos-lhe também alguns dos artigos já publicados:
- 12 truques secretos do WordPress para utilizar em 2010
- 15 fantásticos hacks para WordPress
- 15 truques e dicas para tornar o seu blog WordPress mais interessante
- 10 dicas para fazer o seu blog WordPress sobressair
- 10 shortcodes incríveis para WordPress
Se por ventura gostou destes artigos, vai seguramente adorar este! Tome nota destes 10 truques para WordPress que lhe vão facilitar a vida:
1. TORNE O SEU BLOG WORDPRESS COMPATÍVEL COM MULTI-BROWSERS
Enquanto que ao desenhar um template, existem inúmeros problemas de construção de compatibilidade multi-browser, e na grande maioria das vezes o desenvolvedor acaba por desistir da aplicação de hacks e utilizar normativas convencionais, o seguinte truque pode ajudá-lo seguramente a poupar imensas dores de cabeça. Abra o seu ficheiro functions.php e adicione-lhe o seguinte código:
<?php add_filter('body_class','browser_body_class'); function browser_body_class($classes) { global $is_lynx, $is_gecko, $is_IE, $is_opera, $is_NS4, $is_safari, $is_chrome, $is_iphone; if($is_lynx) $classes[] = 'lynx'; elseif($is_gecko) $classes[] = 'gecko'; elseif($is_opera) $classes[] = 'opera'; elseif($is_NS4) $classes[] = 'ns4'; elseif($is_safari) $classes[] = 'safari'; elseif($is_chrome) $classes[] = 'chrome'; elseif($is_IE) $classes[] = 'ie'; else $classes[] = 'unknown'; if($is_iphone) $classes[] = 'iphone'; return $classes; } ?>
Esta funcionalidade adiciona o nome do browser (ex.: opera, safari, firefox, etc.) à sua tag.
2. AGENDAR EVENTOS NO WORDPRESS
Provavelmente você já saberá que o WordPress oferece uma funcionalidade interessante que lhe permite agendar a publicação de artigos. Mas será que sabia que esta funcionalidade de agendamento poderia ser utilizada para outros fins? Vejamos um exemplo prático de utilização de um blog WordPress para lhe enviar um email a cada hora, por exemplo, a avisar que o seu blog se encontra online/offline. Adicione o seguinte código ao seu ficheiro functions.php.
if (!wp_next_scheduled('my_task_hook')) { wp_schedule_event( time(), 'hourly', 'my_task_hook' ); } add_action( 'my_task_hook', 'my_task_function' ); function my_task_function() { wp_mail('você@oseublog.com', 'Email Automático', 'Olá, este é um email automático do seu blog WordPress.'); }
Se desejar, poderá definir o seu endereço de email, o assunto e o conteúdo do alerta.
3. REMOVER LINKS INDESEJADOS DOS SEUS COMENTÁRIOS
Eis um truque muito simples para remover links indesejados dos comentários do seu blog. Copie e cole simplesmente o seguinte código no ficheiro functions.php do seu template:
function plc_comment_post( $incoming_comment ) { $incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']); $incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] ); return( $incoming_comment ); } function plc_comment_display( $comment_to_display ) { $comment_to_display = str_replace( ''', "'", $comment_to_display ); return $comment_to_display; } add_filter('preprocess_comment', 'plc_comment_post', '', 1); add_filter('comment_text', 'plc_comment_display', '', 1); add_filter('comment_text_rss', 'plc_comment_display', '', 1); add_filter('comment_excerpt', 'plc_comment_display', '', 1);
Esta é uma forma muito interessante de remover comentários com links indesejados e acabar de vez com o spam no seu blog!
4. CHAMAR ARTIGOS POR DATAS ESPECÍFICAS
Quantas vezes você não sentiu já necessidade de puxar artigos do seu blog, que haviam sido publicados entre a data X e a data Y? Este pequeno truque ajuda-o a conseguir isso:
<?php function filter_where($where = '') { $where .= " AND post_date >= '2009-03-17' AND post_date <= '2009-05-03'"; return $where; } add_filter('posts_where', 'filter_where'); query_posts($query_string); while (have_posts()) : the_post(); the_content(); endwhile; ?>
Você poderá colocar este código nos ficheiros de template que desejar. Só não se esqueça de alterar as datas de início e terminus.
5. UTILIZAR MÚLTIPLOS LOOPS SEM DUPLICAÇÃO
Se você necessitar de quebrar o carregamento de artigos em diferentes secções do seu blog (como acontece nas Magazines), no qual você necessita de carregar um número fixo de artigos, e mais tarde os restantes, você pode usar o truque senti para chamar múltiplos loops.
Eis o código para chamar o primeiro loop com os 5 artigos mais recentes:
<?php query_posts('showposts=5'); $ids = array(); while (have_posts()) : the_post(); $ids[] = get_the_ID(); the_title(); the_content(); endwhile; ?>
E o código para chamar o segundo loop, que irá excluir esses 5 artigos e carregar apenas os restantes:
<?php query_posts(array('post__not_in' => $ids)); while (have_posts()) : the_post(); the_title(); the_content(); endwhile; ?>
Este código carrega basicamente os artigos pelo ID, excluido aqueles que estão englobados no $ids[] do primeiro loop.
6. DESTACAR AS PALAVRAS PESQUISADAS NOS RESULTADOS DE PESQUISA
Se você tem necessidade de destacar o texto pesquisado nos resultados da sua pesquisa (uma das opções não standard do WordPress), eis uma solução que o pode ajudar:
- Abra o ficheiro search.php do seu template.
- Encontre função the_title() e substitua-a por:
mytitle();
- Adicione este código ao ficheiro functions.php do seu template:
<?php function mytitle() { $mytitle = get_the_title(); $keys= explode(" ",$s); $mytitle = preg_replace('/('.implode('|', $keys) .')/iu', '<span>\0</span>', $mytitle); echo $mytitle; } ?>
- Abra o ficheiro style.css e acrescente-lhe o seguinte código:
.searched { background: yellow; font-weight:bold; }
Se realizar uma pesquisa agora, já terá os resultados destacadas em amarelo. Se desejar, pode alterar o código do background para a cor que desejar.
7. MOSTRE OS ARTIGOS RELACIONADOS SEM UM PLUGIN
Este é um bom truque se você desejar mostrar os “artigos relacionados” junto dos seus artigos, sem recorrer à utilização de um plugin. Simplesmente abra o seu ficheiro single.php e cole o seguinte código no loop do WordPress:
<?php //for use in the loop, list 5 post titles related to first tag on current post $backup = $post; // backup the current object $tags = wp_get_post_tags($post->ID); echo "<div><h3>Related Posts</h3>"; $tagIDs = array(); if ($tags) { $tagcount = count($tags); for ($i = 0; $i < $tagcount; $i++) { $tagIDs[$i] = $tags[$i]->term_id; } $args=array( 'tag__in' => $tagIDs, 'post__not_in' => array($post->ID), 'showposts'=>5, 'caller_get_posts'=>1 ); $my_query = new WP_Query($args); if( $my_query->have_posts() ) { echo "<ul>"; while ($my_query->have_posts()) : $my_query->the_post(); ?> <li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></li> <?php endwhile; echo "</ul>"; } } else echo "<span>Nenhum artigo relacionado encontrado!</span>"; $post = $backup; // copy it back wp_reset_query(); // to use the original query again echo "</div>"; ?>
O código utiliza “Tags” para relacionar os artigos entre si, pelo que utilize-as convenientemente!
8. ADICIONE OS SEUS ARTIGOS AO FACEBOOK
Este truque cria-lhe automaticamente um link para o seu artigo, para que os seus leitores possam partilhá-lo com os seus amigos no Facebook. Isto pode ajudá-lo a receber mais algum tráfego no seu blog. Abra o ficheiro single.php e cole o código onde deseja que o link apareça:
<a href="http://www.facebook.com/sharer.php?u=<?php the_permalink();?>&t=<?php the_title(); ?>" target="blank">Partilhe no Facebook!</a>
9. MOSTRAR UM ANÚNCIO ENTRE CADA UM DOS SEUS ARTIGOS
Abra o ficheiro index.php do seu blog, e substitua o loop dos artigos por este código:
<?php if (have_posts()) : ?> <?php $count = 0; ?> <?php while (have_posts()) : the_post(); ?> <?php $count++; ?> <?php if ($count == 2) : ?> //Coloque o código do seu anúncio aqui <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2> <?php the_excerpt(); ?> <?php else : ?> <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2> <?php the_excerpt(); ?> <?php endif; ?> <?php endwhile; ?> <?php endif; ?>
Você pode colocar o código do seu anúncio onde diz “//Coloque o código do seu anúncio aqui”. O seu loop poderá não ser propriamente editado de uma forma tão fácil, pelo que lhe recomendamos que faça as devidas adaptações ao código.
10. CONTEÚDO AUTOMÁTICO DEPOIS DE CADA ARTIGO
Você provavelmente gostaria de adicionar conteúdo de texto ou banners publicitários de uma forma automática depois dos seus artigos. Ou quem sabe colocar um link para os seus leitores subscreverem o seu blog. Abra o seu ficheiro functions.php e adicione o seguinte código:
function insertFootNote($content) { if(!is_feed() && !is_home()) { $content.= "<div class='subscribe'>"; $content.= "<h4>Gostou deste artigo?</h4>"; $content.= "<p>Subscreva o nosso <a href='http://feeds2.feedburner.com/wordpresslove'>RSS Feed</a>!</p>"; $content.= "</div>"; } return $content; } add_filter ('the_content', 'insertFootNote');
Até Já!