web-dev-qa-db-fra.com

Ajouter un lien de sous-menu dans add_submenu_page qui s'ouvre dans une nouvelle fenêtre

Comment puis-je ajouter un lien de sous-menu en utilisant add_submenu_page pour ouvrir une nouvelle fenêtre (target="_blank") au lieu de s'ouvrir dans la fenêtre actuelle (comportement par défaut)?

2
leticia

Cela doit être résolu:

  • avec une manipulation de sous-menu non conventionnelle, fournie par @ t31os dans cette réponse
  • et un peu de jQuery
add_action( 'admin_menu', 'wpse_66020_admin_menu_new_item' );
add_action( 'admin_head', 'wpse_66020_add_jquery' );

function wpse_66020_admin_menu_new_item() 
{
    global $submenu;
    $submenu['index.php'][500] = array( 
                                    '<div id="wpse-66020">Go to WPSE</div>'
                                ,   'manage_options' 
                                ,   'https://wordpress.stackexchange.com/' 
                                ); 
}

function wpse_66020_add_jquery() 
{
    ?>
    <script type="text/javascript">
        jQuery(document).ready( function($) {   
            $('#wpse-66020').parent().attr('target','_blank');  
        });
    </script>
    <?php
}

Résultat:

submenu with _blank target
cliquez pour agrandir

1
brasofilo