web-dev-qa-db-fra.com

Existe-il un moyen de faire en sorte que le lien de vue sur la page de gestion des articles s'ouvre dans une nouvelle fenêtre ou un nouvel onglet?

Bonjour, j'essaie de comprendre comment obtenir le lien "Voir" sur les types d'articles et de pages d'articles/pages personnalisés à ouvrir dans un nouvel onglet ou une nouvelle fenêtre.

A screenshot of what I am talking about.

Je sais qu'il est probablement possible de le faire via le fichier functions.php du thème et préférerais de loin suivre cet itinéraire plutôt que d'utiliser un plugin.

Toute aide à ce sujet serait appréciée. Je vous remercie. :)

1
Nicole

Réponse tardive

WP core offre une fonction pour ce cas, qui le rend beaucoup plus facile et évolutif: il suffit de le mapper sur chaque élément.

Enveloppé dans un plugin

Meilleur utilisé comme mu-plugin.

<?php 
/* Plugin Name: (#32093) »kaiser« Open "action"-links in post type list screens in new windows/tabs */

function wpse32093_link_target_blank( $actions, $post )
{
    return array_map( 'links_add_target', $actions );
}
// Add to each post type
foreach ( array( 'post', 'page' ) as $post_type )
    add_action( "{$post_type}_row_actions", 'wpse32093_link_target_blank', 20, 2 );

Le plugin est testé et fonctionne de manière transparente. Vous pouvez ajuster les types de publication où vous souhaitez l'activer dans le tableau de la boucle foreach.

1
kaiser
<?php
/*
Plugin Name: [Editor] Popup View
Author URI: http://www.earnestodev.com/
Description: Opens View link in new windows for in posts and pages manager.
Author: EarnestoDev
Version: 5.U.B
Author URI: http://www.earnestodev.com/
*/
// ----------------------------------------------------------------- //
function popup_view_row_action($actions, $post){
    // Walk array with value references for easy changing
    if(is_array($actions)) foreach($actions as $key => &$value){
        // For the right row_action
        if(($key === 'view') and is_string($value)){
            // Add the target="_blank" in the A tag's attributes
            $value = preg_replace('~<a[\s]+~i', '<a target="_blank" ', $value);
        }
    }
    return $actions;
}
// ----------------------------------------------------------------- //
// Hooks both hierarchical and non-hierarchical
add_action('page_row_actions', 'popup_view_row_action', 11, 2);
add_action('post_row_actions', 'popup_view_row_action', 11, 2);
// ----------------------------------------------------------------- //
?>

Placez dans un fichier ici /wp-contents/mu-plugins/popup-view-action.php ou ici /wp-contents/plugins/pupup-view-action.php, puis activez-le.

Cordialement.

1
EarnestoDev