Quer você seja um desenvolvedor wordpress, quer você seja apenas um blogueiro que gosta de melhorar os seus templates wordpress para os tornar mais interessantes e acima de tudo melhorar a sua acessibilidade, navegabilidade e usabilidade, ainda para mais com a chegada do Google Panda, então é extremamente importante ter alguns códigos à mãos para usar no ficheiro functions.php de forma a tornar o seu blog mais atrativo e funcional. Os colegas do wplift lançaram recentemente uma lista de códigos bem interessantes, pelo que no artigo de hoje trazemos-lhe 10 códigos para usar no ficheiro functions.php e melhorar seu painel de administração.

1. MOSTRAR BOTÃO “TODAS AS OPÇÕES”

Este truque é bastante interessante. Ele irá adicionar uma nova opção ao seu menu de “Opções” com um link para “all settings”, o qual irá permitir-lhe ver uma lista completa de todas as opções do seu site/blog, nomeadamente banco de dados, etc. Este código torna o menu apenas visível a administradores.

// CUSTOM ADMIN MENU LINK FOR ALL SETTINGS
   function all_settings_link() {
    add_options_page(__('All Settings'), __('All Settings'), 'administrator', 'options.php');
   }
   add_action('admin_menu', 'all_settings_link');

2. REMOVER NOTIFICAÇÃO DE UPDATES PARA USUÁRIOS

Este código permite-lhe removar as notificações de updates do WordPress para os seus usuários, sendo que essas notificações continuarão aparecendo para os administradores do site/blog.

// REMOVE THE WORDPRESS UPDATE NOTIFICATION FOR ALL USERS EXCEPT SYSADMIN
       global $user_login;
       get_currentuserinfo();
       if (!current_user_can('update_plugins')) { // checks to see if current user can update plugins
        add_action( 'init', create_function( '$a', "remove_action( 'init', 'wp_version_check' );" ), 2 );
        add_filter( 'pre_option_update_core', create_function( '$a', "return null;" ) );
       }

3. MODIFICAR A LOGOMARCA DE LOGIN E O URL DA IMAGEM

Este código irá permitir-lhe modificar facilmente a logomarca da página de login do seu WordPress, bem como o URL dessa imagem e o texto alt da logomarca.

// CUSTOM ADMIN LOGIN HEADER LOGO
   function my_custom_login_logo() {
echo '';
   }
   add_action('login_head', 'my_custom_login_logo');

// CUSTOM ADMIN LOGIN HEADER LINK & ALT TEXT
   function change_wp_login_url() {
    echo bloginfo('url');  // OR ECHO YOUR OWN URL
   }
   function change_wp_login_title() {
    echo get_option('blogname'); // OR ECHO YOUR OWN ALT TEXT
   }
   add_filter('login_headerurl', 'change_wp_login_url');
   add_filter('login_headertitle', 'change_wp_login_title');

4. CUSTOMIZAR A ORDEM DO MENU DE ADMINISTRAÇÃO

Este código irá permitir-lhe reorganizar a ordem dos elementos do menu de administração do seu WordPress. A única coisa que necessita fazer é clicar num link existente no menu de admin e copiar o URL antes do /wp-admin/. A ordem seguinte representa a ordem do seu novo menu de admin.

// CUSTOMIZE ADMIN MENU ORDER
   function custom_menu_order($menu_ord) {
       if (!$menu_ord) return true;
       return array(
        'index.php', // this represents the dashboard link
        'edit.php?post_type=events', // this is a custom post type menu
        'edit.php?post_type=news',
        'edit.php?post_type=articles',
        'edit.php?post_type=faqs',
        'edit.php?post_type=mentors',
        'edit.php?post_type=testimonials',
        'edit.php?post_type=services',
        'edit.php?post_type=page', // this is the default page menu
        'edit.php', // this is the default POST admin menu
    );
   }
   add_filter('custom_menu_order', 'custom_menu_order');
   add_filter('menu_order', 'custom_menu_order');

5. REMOVER ITENS DENECESSÁRIOS DO PAINEL DE ADMIN

Remova vários itens do seu painel de controlo que não precisa e/ou não necessita.

add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');

function my_custom_dashboard_widgets() {
global $wp_meta_boxes;
 //Right Now - Comments, Posts, Pages at a glance
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);
//Recent Comments
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);
//Incoming Links
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);
//Plugins - Popular, New and Recently updated WordPress Plugins
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);

//Wordpress Development Blog Feed
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
//Other WordPress News Feed
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);
//Quick Press Form
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);
//Recent Drafts List
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts']);
}

6. RODAPÉ CUSTOMIZADO NO PAINEL DE ADMIN

Este truque permite-lhe colocar links ou texto no rodapé do seu painel de administração do WordPress.

// customize admin footer text
function custom_admin_footer() {
        echo 'add your custom footer text and html here';
}
add_filter('admin_footer_text', 'custom_admin_footer');

7. CSS CUSTOMIZADO NO PAINEL DE ADMINISTRAÇÃO

Poderá fazer as alterações que desejar ao css entre as tags.

/* Change WordPress dashboard CSS */
function custom_admin_styles() {
    echo '<style type="text/css">#wphead{background:#069}</style>';
}
add_action('admin_head', 'custom_admin_styles');

8. CONTAGEM DE PALAVRAS EM ARTIGOS

Este truque adiciona um contador do total de palavras publicadas junto da caixa “Right Now” que se encontra no início do painel de administração do WordPress. Muito útil se tiver curiosidade em saber quantas palavras já escreveu no seu blog.

function post_word_count() {
    $count = 0;
    $posts = get_posts( array(
        'numberposts' => -1,
        'post_type' => array( 'post', 'page' )
    ));
    foreach( $posts as $post ) {
        $count += str_word_count( strip_tags( get_post_field( 'post_content', $post->ID )));
    }
    $num =  number_format_i18n( $count );
    // This block will add your word count to the stats portion of the Right Now box
    $text = _n( 'Word', 'Words', $num );
    echo "<tr><td class='first b'>{$num}</td><td class='t'>{$text}</td></tr>";
    // This line will add your word count to the bottom of the Right Now box.
    echo '<p>This blog contains a total of <strong>' . $num . '</strong> published words!</p>';
}

// add to Content Stats table
add_action( 'right_now_content_table_end', 'post_word_count');
// add to bottom of Activity Box
add_action('activity_box_end', 'post_word_count');

9. REMOVER A BARRA DE ADMIN DO WORDPRESS 3.1

O novo WordPress 3.1 incluiu uma nova opção chamada Admin Bar. Esta barra pra o administrador do site é adicionada ao topo do site quando você está ligado. Gostava de a remover permanentemente? Use este truque!

remove_action('init', 'wp_admin_bar_init');

10. ADICIONAR LINKS NA BARRA DE ADMIN DO WORDPRESS

Conforme falámos anteriormente, o WordPress 3.1 inclui a nova barra de administração. Se pretender dar-lhe uso, poderá usar este truque para adicionar-lhe links para páginas ou opções que considera importantes de ter à mão.

function mytheme_admin_bar_render() {
	global $wp_admin_bar;
	$wp_admin_bar->add_menu( array(
		'parent' => 'new-content', // use 'false' for a root menu, or pass the ID of the parent menu
		'id' => 'new_media', // link ID, defaults to a sanitized title value
		'title' => __('Media'), // link title
		'href' => admin_url( 'media-new.php'), // name of file
		'meta' => false // array of any of the following options: array( 'html' => '', 'class' => '', 'onclick' => '', target => '', title => '' );
	));
}
add_action( 'wp_before_admin_bar_render', 'mytheme_admin_bar_render' );

Até Já!