是否在新窗口中打开“访问站点”?

时间:2018-05-22 作者:joq3

我已经设法使管理栏“访问网站”在一个新窗口中打开。但在多站点设置中,有一个名为“我的站点”的菜单项,它显示所有站点,并带有指向“仪表板”和“访问站点”的链接。如何在新链接中打开此“访问站点”按钮?

非常感谢。

编辑:以下是下拉菜单“我的网站”的解决方案:

add_action( \'admin_bar_menu\', \'remove_nodes_mysites\', 999 );
function remove_nodes_mysites( $bar )
{
    $sites = get_blogs_of_user( get_current_user_id() );
    foreach ( $sites as $site )
    {
             // Open Visit Site in new window/tab
             $visit_site_node = $bar->get_node( "blog-{$site->userblog_id}-v" ); // Visit Site
             $visit_site_node->meta[\'target\'] = \'_blank\';
         $bar->add_node($visit_site_node);
    }
}

1 个回复
最合适的回答,由SO网友:Nikolay 整理而成

这应该可以做到(将其放在网络激活的插件中):

add_filter( \'myblogs_blog_actions\', \'my_sites_visit_site_target_blank\', 10, 2 );

function my_sites_visit_site_target_blank( $actions, $user_blog ) {
    $to_replace = ">" . __( \'Visit\' ) . \'</a>\';
    $to_replace_with = " target=\'_blank\' >" . __( \'Visit\' ) . \'</a>\';
    return str_replace( $to_replace, $to_replace_with, $actions );
}

结束