Oct 26
 

Ne voulant pas modifier des fichiers de WordPressW lui-même pour garantir des migrations futures sans problème ni régression, je me suis lancé pour créer mon premier patch sous forme d’extension en utilisant l'APIW fournie.

Aucun écran d’administration, juste la modification que je souhaitais, à savoir :

  • Ouvrir les liens des commentaires et de leurs auteurs dans de nouveaux onglets ou fenêtres s’ils ne pointent pas sur ce blog…

Pour cela, j’ai créé :

  • un répertoire whiler dans le sous-répertoire des extensions : /wp-content/plugins/whiler
  • un fichier texte nommé : whiler_custom_stuffs.php

Dans ce fichier, j’ai codé le script suivant :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
/*
Plugin Name: Whiler Custom Stuffs
Plugin URI: https://blogs.wittwer.fr/whiler/
Description: Adds custom behaviors to my blog without modifying original files
Version: 0.0.1
Author: Whiler
Author URI: https://william.wittwer.fr/
*/


/**
 * Fonction ajoutant le target="_blank" sur tous les sites externes
 * @param string $text on the complete link HTML or author
 * @return HTML
 */

function AddTargetBlankFilteringFunction($text)
{
  return preg_replace('/href=["|\']?(http:\/\/(?!blogs\.wittwer\.fr)([^"\']*))["|\']?/ui', "href="$1" title="Site externe : $1" target="_blank"", $text);
}

//Ajout du hook sur les articles
add_filter( 'get_comment_author_link', 'AddTargetBlankFilteringFunction');
add_filter( 'get_comment_author_url_link', 'AddTargetBlankFilteringFunction');
add_filter('comment_text', 'AddTargetBlankFilteringFunction');

?>

J’ai ensuite simplement uploadéW le répertoire et son fichier fraîchement créés sur le serveur de mon hébergeur via FTPW, puis activé l’extension dans le panneau de contrôle des extensions installées de l’administration de WordPress… et la magie opérait !

Share

6 réponses pour “Ma première extension WordPress”

  1. Pings: Wordpress : ouvrir les liens dans une nouvelle fenêtre

  2. Pings: Twitted by Abysse_Tech

  3. Cathy a dit :

    Un grand merci !! C’est EXACTEMENT ce que je cherchais !
    Cela marche à merveille !!! (clap)

    Répondre

  4. sigis a dit :

    Bonjour,
    j’ai bien réussis à activer l’extension, mais comment faire pour que lien s’ouvre dans une nouvelle fenêtre ? Je ne voie que le l’icone lien dans mon editeur de d’article ?

    Merci d’avance,

    Répondre

  5. Whiler a dit :

    @ sigis : Salut,

    Je ne suis pas sûr de bien saisir la question…

    L’extension est pour que tous les liens des commentaires de votre blog s’ouvre dans une nouvelle page.. il n’y a rien à faire de plus…

    Si vous souhaitez qu’un lien contenu dans un de vos propres articles s’ouvre dans une nouvelle fenêtre, cette extension ne vous sert à rien… pour faire cela, il vous suffit d’ajouter target="_blank" dans votre balise <a> ou d’utiliser l’interface graphique :
    Ouvrir un lien dans une nouvelle fenêtre

    Répondre

Laisser une réponse

(requis)

(requis)

*

;) (lol) (y) |-( (hi) 8-) (angel) :s (clap) (bow) (tmi) (:| plus »

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.