web-dev-qa-db-fra.com

Cliquer sur Afficher le message dans le brouillon ouvre un nouvel onglet

Depuis la version 4.0, lorsque vous enregistrez une publication en tant que brouillon, le lien Afficher la publication ouvre la publication enregistrée dans un nouvel onglet. (target = "_ blank")

Existe-t-il un moyen de revenir au comportement précédent (ouvrir la version de Preview dans l'onglet -same-?)?

Ce qui est étrange, c'est qu'une fois l'article publié, la version enregistrée s'ouvre dans le même onglet (comme dans les versions précédentes WP.)

J'ai regardé ce post (qui semble être l'inverse) Make “Post published. View post ”Ouvrir dans un nouvel onglet

J'ai trouvé cela en modifiant la ligne 93 de:

10 => sprintf( __('Post draft updated. <a href="%s">Preview post</a>'), esc_url( add_query_arg( 'preview', 'true', $permalink ) ) ),

à

10 => sprintf( __('Post draft updated. <a href="%s">Preview post</a>'), esc_url( add_query_arg( 'preview', 'false', $permalink ) ) ),

Cela fait ce que je veux. CEPENDANT, c'est le noyau dur. Y at-il un moyen de modifier cela sans piratage de ce fichier?

TIA,

1
jchwebdev

Vous pouvez pirater en ajoutant des lignes ci-dessous dans le fichier functions.php de votre thème.

function remove_preview_target()
{
    // below JS code will set Preview button's **target** attribute to **_self**, it means same tab/window.
    echo "<script>
        jQuery(document).ready(function(){
        jQuery('#post-preview').attr('target', '_self');
        })
        </script>";

}
// this action performs in admit footer
add_action('admin_footer', 'remove_preview_target');

Ou ajoutez les lignes ci-dessous dans votre fichier JS.

jQuery(document) . ready(function () {
     jQuery("#post-preview") . attr("target", "_self");
});
1
WisdmLabs