2013-05-23 4 views
11

Il mio plug-in è fondamentalmente una pagina di visualizzazione dei collegamenti, ad esempio se si desidera visualizzare una pagina con collegamenti ad altri siti Web.URL amministratore nella pagina del mio plug-in

in wp-admin ho una voce di menu sulla barra laterale sinistra aggiunto con questo codice:

function bls_add_menu_page() { 
    add_menu_page('Custom Links', 'Custom Links', 'manage_options', 
        'customlinks', 'bsl_admin_page', '', 15); 
} 

Dopo aver aggiunto un nuovo collegamento, voglio reindirizzare alla mia home page plug-in di amministrazione. L'URL quando clicco sul mio plug-link del menu è:

localhost/wp-admin/admin.php?page=customlinks 

Come posso ottenere l'URL in Worpdress? Attualmente faccio solo questo:

wp_redirect('/wp-admin/admin.php?page=customlinks'); 

ma spero che ci sia un modo migliore per ottenere il mio URL di amministrazione del plugin?

risposta

21

si ottiene l'URL concreto per admin.php utilizzando la funzione admin_url:

admin_url('admin.php'); # http(s)://localhost/wp-admin/admin.php 

Tale funzione sceglie la corretta sheme (HTTP/HTTPS) in base alla configurazione di Wordpress per voi in modo non c'è bisogno di preoccuparsi esso. Lo stesso vale per il percorso verso l'amministratore. L'unica cosa che devi specificare è il nome del file (admin.php).

E nel tuo esempio concreto si aggiunge la pagina di query-info parte:

$url = admin_url('admin.php?page=customlinks'); 
wp_redirect($url); 
9

URL per la pagina di pagina del menu o le opzioni ha 'pagina' di parametro (pag slug definito add_menu_page() o add_options_page ()). È sempre possibile ottenere la pagina corrente da $ _GET [ 'pagina'] param, quindi l'URL per la pagina delle opzioni è:

admin_url("options-general.php?page=".$_GET["page"]) 

, e l'URL per la pagina di menu (in realtà funziona con le pagine opzioni anche) è:

admin_url("admin.php?page=".$_GET["page"]) 
Problemi correlati