Se você nunca reparou, na pasta do seu template wordpress está um ficheiro chamado functions.php. Considerado como um dos mais poderosos ficheiros do WordPress, esse ficheiro, tal como o nome sugere, permite-lhe adicionar ou remover funções ao seu WordPress. Esse ficheiro funciona na verdade como um plugin, mas o código é todo colocado nele, podendo inclusive ter todos os códigos de funcionalidades nesse ficheiro. Os colegas do WPBeginner resolveram entretanto fazer uma listinha bem interessante com alguns dos códigos que você pode usar para criar funções na sua instalação do WordPress.
Para alguns desses truques você necessita ter algum conhecimento sobre PHP. Não para todos obviamente. E tome nota também que todos esses códigos devem ser usados no seu ficheiro functions.php, obviamente!
1. ADICIONAR GOOGLE ANALYTICS
Você pode copiar e colar o código seguinte, inserindo o seu código do Google Analytics onde diz para o fazer. Você pode usar esse código no seu ficheiro functions.php e nunca mais terá de se preocupar com ele. O que esse código faz é criar uma função que vai ficar no wp_footer, pelo que ele automaticamente irá adicionar o seu Analytics no rodapé de todas as suas páginas.
<?php
add_action(‘wp_footer’, ‘add_googleanalytics’);
function add_googleanalytics() { ?>
// Cole aqui seu código do Google Analytics
<?php } ?>
2. ADICIONAR UM FAVICON EM SEU BLOG
O seu blog deverá ter sempre uma identidade própria. Uma das formas de você acrescentar identidade ao seu blog é adicionando um favicon, aquele ícone que aparece ao lado do endereço do seu blog na janela do browser. Você pode fazer isso usando seu ficheiro functions.php, basta copiar e colar esse código:
// add a favicon to your
function blog_favicon() {
echo ‘<link rel=”Shortcut Icon” type=”image/x-icon” href=”‘.get_bloginfo(‘wpurl’).’/favicon.ico” />’;
}
add_action(‘wp_head’, ‘blog_favicon’);
Agora, só precisa enviar seu ficheiro .ico para a raíz do seu servidor. Se desejar, pode também alterar a direcção “href” para uma outra localização que desejar.
3. REMOVER VERSÃO DO WORDPRESS
Ter a versão do seu WordPress visível no código fonte de seu blog é um grande risco, especialmente se você não atualizar seu WordPress regularmente. Quando existem falhas de segurança ou crackers interessados em entrar em seu sistema, é importante que você não tenha sua versão visível no código. Para remover a versão do seu WordPress, copie e cole o seguinte código:
function wpbeginner_remove_version() {
return ”;
}
add_filter(‘the_generator’, ‘wpbeginner_remove_version’);
4. MUDAR O LOGO NO SEU PAINEL DE CONTROLO
Se você gostaria de mudar o logotipo do seu painel de controlo, que originalmente apresenta o logo do WordPress, utilize essa função aqui:
//hook the administrative header output
add_action(‘admin_head’, ‘my_custom_logo’);function my_custom_logo() {
echo ‘
<style type=”text/css”>
#header-logo { background-image: url(‘.get_bloginfo(‘template_directory’).’/images/custom-logo.gif) !important; }
</style>
‘;
}
Não esqueça depois de alterar o endereço de carregamento do logotipo.
5. ALTERAR RODAPÉ DO PAINEL DE CONTROLO
Você também pode alterar o rodapé de seu painel de controlo, acrescentando links que considere importantes, ou removendo os links presentes. Simplesmente copie e cole o seguinte código:
function remove_footer_admin () {
echo ‘Alimentado por <a href=”http://www.wordpress.org” target=”_blank”>WordPress</a> | Desenhado por <a href=”http://www.wordpress-love.com” target=”_blank”>Wordpress</a> | WordPress Tutoriais: <a href=”http://www.wordpress-love.com” target=”_blank”>Wordpress Love</a></p>’;
}add_filter(‘admin_footer_text’, ‘remove_footer_admin’);
6. ADICIONAR WIDGETS AO SEU PAINEL DE CONTROLO
A sua página de entrada no seu painel de controlo está recheada de widgets, como o Quickpress, os plugins WordPress, o blog de desenvolvimento do WordPress, entre outros. Se quiser colocar um widget personalizado seu, com links para determinados recursos ou outras coisas, use o seguinte código:
add_action(‘wp_dashboard_setup’, ‘my_custom_dashboard_widgets’);
function my_custom_dashboard_widgets() {
global $wp_meta_boxes;wp_add_dashboard_widget(‘custom_help_widget’, ‘Theme Support’, ‘custom_dashboard_help’);
}function custom_dashboard_help() {
echo ‘<p>Olá e bem-vindo ao nosso painel de controlo! Precisa de ajuda? Contacte-nos <a href=”mailto:yourusername@gmail.com”>aqui</a>. Para tutoriais interessantes em WordPress visite: <a href=”http://www.wordpress-love.com” target=”_blank”>Wordpress Love</a></p>’;
}
Não esqueça de alterar o endereço de email e a informação da forma que bem desejar.
7. ALTERAR O GRAVATAR ORIGINAL DO WORDPRESS
Originalmente o WordPress tem um gravatar chamado Homem Mistério. No entanto, você pode trocar esse gravatar por outro que deseje e tornar o seu blog ainda mais interessante e único. Para trocar esse gravatar, copie e cole o seguinte código:
add_filter( ‘avatar_defaults’, ‘newgravatar’ );
function newgravatar ($avatar_defaults) {
$myavatar = get_bloginfo(‘template_directory’) . ‘/images/gravatar.gif’;
$avatar_defaults[$myavatar] = “WordPress-Love”;
return $avatar_defaults;
}
Não esqueça de fazer o upload de uma imagem sua para a pasta do seu template. Altere também o caminho e o nome do seu novo gravatar no código em cima. Depois disso feito vá em WP-Admin » Opções » Debate e veja seu novo gravatar ao vivo!
8. COPYRIGHT AUTOMÁTICO EM SEU RODAPÉ
Essa aí é fantástica! Quem é que nunca se esqueceu de actualizar a data do copyright no rodapé de um blog? Chegar num blog e ver no rodapé © 2006 é no mínimo engraçado. Para que isso não lhe aconteça, utilize o seguinte código para criar um copyright automático em seu blog:
function comicpress_copyright() {
global $wpdb;
$copyright_dates = $wpdb->get_results(”
SELECT
YEAR(min(post_date_gmt)) AS firstdate,
YEAR(max(post_date_gmt)) AS lastdate
FROM
$wpdb->posts
WHERE
post_status = ‘publish’
“);
$output = ”;
if($copyright_dates) {
$copyright = “© ” . $copyright_dates[0]->firstdate;
if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) {
$copyright .= ‘-‘ . $copyright_dates[0]->lastdate;
}
$output = $copyright;
}
return $output;
}
Depois de colocar essa função no seu WordPress, copie e cole o seguinte código para o seu ficheiro footer.php onde pretende mostrar a data atualizada:
<?php echo comicpress_copyright(); ?>
A função procura pela data do seu primeiro artigo, e a data do seu último artigo, mostrando depois o seu copyright como algo do tipo © 2006 – 2010.
9. ADICIONAR CAMPOS DE REGISTRO/PERFIL
Se você deseja criar uma página de autor mais versátil, então você provavelmente deseja adicionar novos campos ao perfil de seus usuários. Esse código permite-lhe adicionar por exemplo campos para os perfis de twitter e facebook, embora possa ser usado para outros fins também.
function my_new_contactmethods( $contactmethods ) {
// adicionar Twitter
$contactmethods[‘twitter’] = ‘Twitter’;
// adicionar Facebook
$contactmethods[‘facebook’] = ‘Facebook’;return $contactmethods;
}
add_filter(‘user_contactmethods’,’my_new_contactmethods’,10,1);
Você pode depois chamar esses campos de utilizador no seu ficheiro author.php adicionando-lhe o seguinte código:
<?php echo $curauth->twitter; ?>
10. MANIPULAR O RODAPÉ DO SEU RSS FEED
Se você gostaria de colocar anúncios ou outras informações no rodapé dos seus RSS Feeds, apenas necessita de utilizar o seguinte código no ficheiro de funções do seu WordPress:
function wplove_postrss($content) {
if(is_feed()){
$content = ‘Artigo escrito por Paulo Faustino ‘.$content.’Veja mais em WordPress-Love’;
}
return $content;
}
add_filter(‘the_excerpt_rss’, ‘wplove_postrss’);
add_filter(‘the_content’, ‘wplove_postrss’);
Nesse exemplo estamos usando a função wplove_postrss para adicionarmos em cada artigo um texto dizendo que o Artigo foi escrito por Paulo Faustino e para Ver mais em WordPress-Love. Mas adicionámos também o if(is_feed), para que ele adicione esse texto apenas nos seus RSS Feeds. Para tornar esse código compatível com seu blog, terá de alterar o wplove e também o texto para que fique do jeito que você quer.
11. ADICIONAR THUMBNAILS NOS SEUS RSS FEEDS
A opção post thumbnail normalmente só é utilizada no seu blog, mas saiba que também poderá estende-la para os seus RSS feed através de uma função muito simples. Copie e cole o seguinte código no seu ficheiro functions.php:
function rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = ‘<p>’ . get_the_post_thumbnail($post->ID) .
‘</p>’ . get_the_content();
}
return $content;
}
add_filter(‘the_excerpt_rss’, ‘rss_post_thumbnail’);
add_filter(‘the_content_feed’, ‘rss_post_thumbnail’);
Fique à vontade para depois estilizar com CSS esses thumbnails da forma que desejar.
12. DESLIGAR A PESQUISA DO WORDPRESS
Usando o WordPress como CMS, muitas vezes a sua opção de pesquisa não é necessária e/ou é substituída pelas caixas de pesquisa do Google Adsense que sempre que lhe podem ajudar a ganhar dinheiro. Se remover a pesquisa do seu design, a função de pesquisa continua a existir e a ser funcional. Para desligar essa função, utilize esse código:
function fb_filter_query( $query, $error = true ) {
if ( is_search() ) {
$query->is_search = false;
$query->query_vars[s] = false;
$query->query[s] = false;// to error
if ( $error == true )
$query->is_404 = true;
}
}add_action( ‘parse_query’, ‘fb_filter_query’ );
add_filter( ‘get_search_form’, create_function( ‘$a’, “return null;” ) );
13. MUDAR SEUS FEEDS PARA FEEDBURNER AUTOMATICAMENTE
Se você criou uma conta no feedburner para o seu blog, você provavelmente irá trocar todos os endereços de RSS do seu WordPress para os novos links de RSS do feedburner. Dessa forma você tenta garantir que não perde nenhum subscritor. Você pode fazer isso manualmente, com um plugin, ou então com essa função aqui:
function custom_feed_link($output, $feed) {
$feed_url = ‘http://feeds.feedburner.com/wordpresslove’;
$feed_array = array(‘rss’ => $feed_url, ‘rss2’ => $feed_url, ‘atom’ => $feed_url, ‘rdf’ => $feed_url, ‘comments_rss2’ => ”);
$feed_array[$feed] = $feed_url;
$output = $feed_array[$feed];return $output;
}function other_feed_links($link) {
$link = ‘http://feeds.feedburner.com/wordpresslove’;
return $link;}
//Add our functions to the specific filters
add_filter(‘feed_link’,’custom_feed_link’, 1, 2);
add_filter(‘category_feed_link’, ‘other_feed_links’);
add_filter(‘author_feed_link’, ‘other_feed_links’);
add_filter(‘tag_feed_link’,’other_feed_links’);
add_filter(‘search_feed_link’,’other_feed_links’);
14. AUMENTAR A DIMENSÃO DOS EXCERTOS
Originalmente o WordPress coloca os excertos em 55 palavras. Se você desejar aumentar o tamanho dos seus excertos para que estes apresentem mais texto, utilize a seguinte função:
function new_excerpt_length($length) {
return 100;
}
add_filter(‘excerpt_length’, ‘new_excerpt_length’);
Não se esqueça de trocar o valor 100 pelo valor que deseja ter.
15. MOSTRAR O NÚMERO DE SEGUIDORES NO TWITTER
Existem alguns widgets para mostrar o número de seguidores que você tem no Twitter, mas normalmente são limitados. Com esse código você pode mostrar o seu número de seguidores e customiza-lo da forma que bem entender. Utilize o seguinte código:
function rarst_twitter_user( $username, $field, $display = false ) {
$interval = 3600;
$cache = get_option(‘rarst_twitter_user’);
$url = ‘http://api.twitter.com/1/users/show.json?screen_name=’.urlencode($username);if ( false == $cache )
$cache = array();// if first time request add placeholder and force update
if ( !isset( $cache[$username][$field] ) ) {
$cache[$username][$field] = NULL;
$cache[$username][‘lastcheck’] = 0;
}// if outdated
if( $cache[$username][‘lastcheck’] < (time()-$interval) ) {// holds decoded JSON data in memory
static $memorycache;if ( isset($memorycache[$username]) ) {
$data = $memorycache[$username];
}
else {
$result = wp_remote_retrieve_body(wp_remote_request($url));
$data = json_decode( $result );
if ( is_object($data) )
$memorycache[$username] = $data;
}if ( is_object($data) ) {
// update all fields, known to be requested
foreach ($cache[$username] as $key => $value)
if( isset($data->$key) )
$cache[$username][$key] = $data->$key;$cache[$username][‘lastcheck’] = time();
}
else {
$cache[$username][‘lastcheck’] = time()+60;
}update_option( ‘rarst_twitter_user’, $cache );
}if ( false != $display )
echo $cache[$username][$field];
return $cache[$username][$field];
}
Depois coloque o código de apresentação onde deseja mostrar o seu número de seguidores, atualizações, etc:
echo rarst_twitter_user(‘escoladinheiro’, ‘name’).’ has ‘.
rarst_twitter_user(‘escoladinheiro’, ‘followers_count’).’ followers after ‘.
rarst_twitter_user(‘escoladinheiro’, ‘statuses_count’).’ updates.’;
É tudo! Bons truques :)