Aggiungere un link "esterno" al menu di amministrazione nel backend
Sto cercando di aggiungere un link al mio menu di amministrazione (dashboard/backend) che porti al frontend di WordPress, in pratica voglio un link nel menu che mi porti al blog.
Ho trovato alcuni modi per aggiungere nuovi elementi al menu di amministrazione, ma non sono riuscito a collegarmi alla home_url, sembra che il menu admin sia progettato solo per linkare elementi all'interno di wp-admin. Qualcuno ci è riuscito?
Modifica:
Ho provato con questo: https://gist.github.com/792b7aa5b695d1092520
add_admin_menu_item('Panoramica',array(
'title' => 'Visualizza sito',
'slug' => get_bloginfo('url')
));
Che mi restituisce il link hxxp://myurl.com/myurl.com
Con questo plugin (hxxp://wordpress.org/extend/plugins/admin-menu-editor/), ottengo:
hxxp://myurl.com/wp-admin/www.test.com

puoi creare una funzione che reindirizza al front-end in questo modo:
function redirect_home_987(){
wp_redirect( home_url() );
exit;
}
e chiamare quella funzione nella funzione predefinita di WordPress add_menu_page in questo modo:
add_menu_page( 'redirecting', 'Visualizza Sito', 'read', 'my-top-level-handle', 'redirect_home_987');
Spero sia utile

Non sono sicuro di averti capito correttamente. Ho aggiunto questo al mio functions.php ora:
add_action('admin_menu', 'add_viewsite');
function add_viewsite() { add_menu_page( 'redirecting', 'View Site', 'read', 'my-top-level-handle', 'redirect_home_987'); }
// Chiama questa funzione per un link alla "home" function redirect_home_987(){ wp_redirect( home_url() ); exit; }
Che mi dà un link che appare così: http://www.url.com/wp-admin/admin.php?page=my-top-level-handle

Avevo lo stesso problema - alcuni degli header erano già stati inviati. Ho provato alcune opzioni; l'unica che sembra funzionare (e con cui non sono pienamente soddisfatto) è combinare il codice sopra con javascript, come in questa risposta

Non è possibile aggiungere elementi ai menu di amministrazione che puntano a URL esterni, le funzioni di aggiunta menu non supportano questa funzionalità, né la permetteranno.
Tuttavia, se colleghi una callback all'hook admin_menu
, puoi inserire manualmente alcuni elementi e superare completamente il problema degli URL esterni. Io stesso utilizzo questo metodo e sono abbastanza sorpreso che nessuno abbia già evidenziato il problema con i link esterni nei menu.
Ho fornito un esempio rispondendo a Aggiungere un link arbitrario al menu di amministrazione?
Fammi sapere se questo ti aiuta.

In effetti, questa domanda sembra essere un duplicato esatto di questa. Quindi ho votato per chiuderla!

add_action('admin_menu', 'example_admin_menu');
/**
* Aggiunge un link esterno all'area Strumenti
*/
function example_admin_menu() {
global $submenu;
$url = 'http://www.example.com/';
$submenu['tools.php'][] = array('Esempio', 'manage_options', $url);
}
