如何在WordPress管理侧边栏上添加自定义链接

10

如何在WordPress管理侧边栏上添加自定义链接而不使用插件?例如,我想添加“Google.com”链接。我该怎么做?

我尝试过这样做:将下面的代码添加到admin-bar.php中:

function mycustomlink() {
global $wp_admin_bar;
$wp_admin_bar->add_menu( array(
    'parent' => 'new-content',
    'id' => 'mycustomlinkId',
    'title' => __('Custom link'),
    'href' => admin_url( 'google.com'),
    'meta' => false 
));}

我将下面的代码添加到class-wp-admin-bar.php中。

add_action( 'admin_bar_menu', 'mycustomlink', 900 );

但是没有结果。

2个回答

23

将此代码添加到您的主题功能文件 function.php 的末尾。

    add_action( 'admin_menu', 'linked_url' );
    function linked_url() {
    add_menu_page( 'linked_url', 'External link', 'read', 'my_slug', '', 'dashicons-text', 1 );
    }

    add_action( 'admin_menu' , 'linkedurl_function' );
    function linkedurl_function() {
    global $menu;
    $menu[1][2] = "http://www.example.com";
    }

1
如果你需要在这个菜单上有一个子菜单,里面包含多个链接,该怎么办呢?(就像“页面”或“文章”菜单项那样可以展开的子菜单。) - Jay

10

对于绝对链接,只需在您的functions.php文件中添加此挂钩:

add_action('admin_menu', 'add_custom_menu_link');
function add_custom_menu_link()
{
    add_menu_page('my_custom_link_1', 'Google', 'read', 'https://google.com/', '', 'dashicons-text', 1);
}

这也适用于相对链接,但您需要将初始斜杠替换为HTML实体/,以防止WordPress将其删除。

因此,例如,您必须使用/books/563代替/books/563

add_action('admin_menu', 'add_custom_menu_link');
function add_custom_menu_link()
{
    add_menu_page('my_custom_link_1', 'Google', 'read', "/books/563", '', 'dashicons-text', 1);
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接