2013-05-23 14 views
11

Moja wtyczka jest w zasadzie stroną wyświetlania linków, na przykład jeśli chcesz wyświetlić stronę z linkami do innych stron.Adres URL administratora mojej strony wtyczki

W wp-admin Mam menu na lewym pasku bocznym dodanej z tym kodem:

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

po dodaniu nowego linku, chcę przekierować do mojej stronie głównej plugin admin. Adres URL po kliknięciu linku menu wtyczki to:

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

Jak mogę uzyskać ten adres URL w Worpdress? Obecnie po prostu robię to:

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

, ale mam nadzieję, że istnieje lepszy sposób na uzyskanie mojego adresu URL administratora wtyczki?

Odpowiedz

21

uzyskać konkretny adres URL do admin.php za pomocą admin_url funkcję:

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

Funkcja ta wybiera właściwą sheme (HTTP/HTTPS) w zależności od konfiguracji Wordpress dla ciebie więc nie trzeba się martwić o to. To samo dotyczy ścieżki do administratora. Jedyne, co musisz podać, to nazwa pliku (admin.php).

I w konkretny przykład dodasz stronę query-info udział:

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

URL strony menu lub opcji strony ma 'strona' parametr (strona ślimak zdefiniowany w add_menu_page() lub add_options_page ()). Zawsze można uzyskać bieżącą stronę z $ _GET [ „strona”] param, więc URL strony opcji jest:

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

, a adres URL strony menu (w rzeczywistości działa z opcjami stron rowniez) wynosi:

admin_url("admin.php?page=".$_GET["page"]) 
Powiązane problemy