J'ai personnalisé le admin bar
dans la version 3.3 pour n'avoir que certains liens personnalisés avec les éléments suivants ajoutés à functions.php
:
function mytheme_admin_bar_render() {
global $wp_admin_bar;
$wp_admin_bar->remove_menu('site-name');
$wp_admin_bar->remove_menu('new-content');
$wp_admin_bar->remove_menu('updates');
$wp_admin_bar->remove_menu('comments');
$wp_admin_bar->remove_menu('edit-profile');
$wp_admin_bar->add_menu( array(
'id' => 'reports', 'title' => __( 'Reports'), 'href' => __('xyz.html'),
));
}
add_action( 'wp_before_admin_bar_render', 'mytheme_admin_bar_render' );
Je voudrais maintenant avoir le lien à l'extrême droite qui dit Howdy, ..., fonctionne comme un bouton de déconnexion.
Quelqu'un a-t-il des suggestions sur la manière d'atteindre cet objectif?
Voici une solution simple que j'ai trouvée en procédant au reverse engineering de ce plugin: http://wordpress.org/extend/plugins/dashboard-tweaks/
function custom_logout_link() {
global $wp_admin_bar;
$wp_admin_bar->add_menu( array(
'id' => 'wp-custom-logout',
'title' => 'Logout',
'parent'=> 'top-secondary',
'href' => wp_logout_url()
) );
$wp_admin_bar->remove_menu('my-account');
}
add_action( 'wp_before_admin_bar_render', 'custom_logout_link' );
Cela devrait frapper la tache:
function remove_old_logout() {
global $wp_admin_bar;
$wp_admin_bar->remove_node('my-account');
}
add_action( 'wp_before_admin_bar_render', 'remove_old_logout' );
function newlogout() {
?>
<style type="text/css">
table#one-click01 tr td a:link,
table#one-click01 tr td a:visited {
color:#CCCCCC;
text-decoration: none;
}
table#one-click01 tr td a:hover,
table#one-click01 tr td a:active,
table#one-click01 tr td a:focus {
color:#FAFAFA;
text-decoration: none;
}
table#one-click01 {
float:right;z-index:100000;position:fixed;right:0px;top:0px;background:#464646;padding-right:30px;padding-left:100px;border:0px;
}
body table#one-click01 tr td {
height:25px;
padding:3px 0 0 0;
font-size:13px;
font-family:sans-serif;
line-height:1.5;
color:#CCCCCC;
}
body.wp-admin table#one-click01 tr td {
height:28px;
padding-top:0px;
}
body.logged-in table#one-click01 tr td {
padding-right:30px;
border: 0px;
}
body.logged-in table#one-click01 {
margin:0;border-collapse:collapse;border-spacing:0;
}
body.logged-in table#one-click01 tr td {
vertical-align:middle;
border:0;
}
</style>
<table id="one-click01" style="" border="0" cellspacing="0" cellpadding="0"><tr><td align=center valign=center>
<?php
wp_get_current_user();
$current_user = wp_get_current_user();
if ( !($current_user instanceof WP_User) )
return;
$name = $current_user->display_name;
?>
<?php echo '
<a href="' . wp_logout_url() . '" title="' . esc_attr__('Log Out') . '">Howdy, ' . __($name) . '</a>'
; ?>
</td></tr></table>
<?php
}
add_action( 'admin_bar_menu', 'newlogout' );
?>
Version modifiée de: http://wordpress.org/extend/plugins/one-click-logout/