My plugin is basically a link display page, for instance if you want to display a page with links to other websites.
In wp-admin I have a menu item on the left side bar added with this code:
function bls_add_menu_page() {
add_menu_page('Custom Links', 'Custom Links', 'manage_options',
'customlinks', 'bsl_admin_page', '', 15);
}
After adding a new link, I want to redirect to my plugin home page in admin. The URL when I click on my plugin menu link is :
localhost/wp-admin/admin.php?page=customlinks
How do I get that URL in Worpdress? Currently I just do this :
wp_redirect('/wp-admin/admin.php?page=customlinks');
but I hope there is a better way of getting my plugin admin URL?
You get the concrete URL to
admin.php
by using theadmin_url
function:That function chooses the proper sheme (http/https) based on your WordPress configuration for you so you do not need to care about it. Same for the path to the admin. The only thing you need to specify is the file name (
admin.php
).And in your concrete example you add the page query-info part:
URL for menu page or options page has ‘page’ parameter ( page slug defined in add_menu_page() or add_options_page() ). You can always get the current page from $_GET[‘page’] param, so URL for the options page is:
, and URL for menu page ( actually it works with options pages also ) is: