我的插件页面的管理员URL

时间:2013-05-23 11:42:51

标签: wordpress

我的插件基本上是一个链接显示页面,例如,如果你想显示一个包含其他网站链接的页面。

在wp-admin中,左侧栏中的菜单项添加了以下代码:

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

添加新链接后,我想在admin中重定向到我的插件主页。点击我的插件菜单链接时的URL是:

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

如何在Worpdress中获取该URL?目前我只是这样做:

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

但我希望有更好的方法来获取我的插件管理员网址?

2 个答案:

答案 0 :(得分:26)

您可以使用admin_url函数获取admin.php的具体网址:

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

该功能会根据您的Wordpress配置为您选择正确的sheme(http / https),因此您无需关心它。对于管理员的路径也是如此。您需要指定的唯一内容是文件名(admin.php)。

在您的具体示例中,您添加页面 query-info part:

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

答案 1 :(得分:9)

菜单页面或选项页面的URL具有'page'参数(在add_menu_page()或add_options_page()中定义的页面slug)。您始终可以从$ _GET ['page'] param获取当前页面,因此选项页面的URL为:

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

,菜单页面的URL(实际上它也适用于选项页面)是:

admin_url( "admin.php?page=".$_GET["page"] )
相关问题