Ajouter une fonctionnalité spécifique à votre site WordPress

Publié le : 28 octobre 2024. Date de dernière mise à jour : 2 novembre 2024

 

Si vous voulez vraiment que votre site Web ressemble et se comporte comme vous le souhaitez, vous avez 2 possibilités principales. Ajouter de nombreux plugins ou ajouter du code personnalisé. Si la première solution est souvent plus simple à mettre en place, elle peut devenir un cauchemar en termes de performances. Par conséquent, dans certains cas, vous devrez ajouter du code pour ajouter une fonctionnalité personnalisée à votre site Web WordPress.

Heureusement, ce guide vous facilitera la tâche et vous expliquera tout ce que vous devez savoir pour le faire. Même si vous n’êtes pas développeur. Et, avant de commencer, voici une règle générale à suivre pour décider si vous devez ou non installer un plugin :

Si vous prévoyez d’utiliser moins de 10 % des fonctionnalités d’un plugin, ne l’installez pas et recherchez d’autres solutions

Celle-ci vient de nous, de rien

1|Installer Code Snippets

Sur Internet, si vous effectuez des recherches sur la façon d’ajouter des fonctionnalités personnalisées à votre site Web WordPress, de nombreuses réponses vous diront d’ajouter le code au fichier functions.php de votre thème. Ne faites pas ça !

Non seulement cela deviendra compliqué au fil du temps à mesure que vous ajouterez du code, mais cela exécutera également ce code partout. Même si ce n’est pas nécessaire. À la place, vous pouvez utiliser un plugin gratuit appelé Code Snippets qui présente de nombreux avantages :

  • Il vous permet d’organiser votre code en petits extraits
  • Vous pouvez activer ou désactiver vos extraits de code à tout moment
  • Il vous permet de décider si le code s’exécute sur le backend, le frontend ou les deux
  • Vous pouvez exporter/importer vos extraits de code d’un site Web de test vers le site en direct
  • Si le code est erroné, ce plugin l’empêchera de s’exécuter et fera planter votre site Web

Pour toutes ces raisons, nous vous conseillons d’utiliser ce plugin léger et gratuit.

2|Comprendre les hooks WordPress

Vous n’avez pas besoin d’être développeur pour comprendre ce guide. De plus, vous n’avez pas besoin de connaître PHP pour l’utiliser. Mais si vous souhaitez ajouter une fonctionnalité personnalisée à votre site Web WordPress, vous devez comprendre certains concepts. Si vous les apprenez, vous arriverez plus facilement à trouver le code dont vous avez besoin.

WordPress s’appuie largement sur les hooks. Certains pourraient même dire que les hooks sont la principale fonctionnalité de WordPress. En fait, ce sont les hooks qui permettent à WordPress d’être hautement et facilement personnalisable.

Définition : les crochets sont un moyen pour un morceau de code d’interagir / modifier un autre morceau de code à des spots spécifiques prédéfinis. Ils constituent les bases de la façon dont les plugins et les thèmes interagissent avec WordPress Core, mais ils sont également largement utilisés par le noyau lui-même.

Pour le simplifier pour vous, disons-le de cette façon. Tous les développeurs WordPress et Plugin ajoutent des portes à différents endroits où vous pouvez ajouter votre propre code et modifier un comportement spécifique.

1|Hook Creation

Les développeurs peuvent ajouter 2 types de crochets dans leur code: actions et filtres .

  • Une action prend les informations qu’elle reçoit, fait quelque chose avec elle et ne renvoie rien. En d’autres termes: il agit sur quelque chose puis sort, ne renvoyant rien au crochet d’appel.
  • Un filtre prend les informations qu’il reçoit, la modifie d’une manière ou d’une autre et la renvoie. En d’autres termes: il filtre quelque chose et le transmet au crochet pour une utilisation ultérieure.

Voici l’exemple d’un filtre

$value = apply_filters('the_name_of_my_filter', $data_sent);

Avec la ligne ci-dessus, le développeur a créé un crochet appelé ‘the_name_of_my_filter‘ qui enverra l’information $data_sent. Le résultat sera stocké dans $value.

2|Se brancher sur un crochet

Si vous souhaitez ajouter plus d’informations ou ajouter une fonctionnalité personnalisée, vous devrez probablement utiliser un crochet existant et y ajouter votre code.

Si nous regardons le filtre ci-dessus, voici comment y brancher

add_filter('the_name_of_my_filter', 'theNameOfYourFunction');

Ici, vous avez dit que vous vouliez appeler le code à partir de la fonction de theNameOfyourFunction à l’intérieur de ce crochet existant. Cependant, c’est la moitié du travail. Vous devez toujours ajouter votre fonction personnalisée.

function theNameOfYourFunction($data)
{
    /** Add your custom code or feature here */
    return $data;
}

Voilà, votre code sera appelé chaque fois que le crochet est appelé. C’est encore un peu obscur? Pas de problème, tout deviendra clair avec l’exemple suivant


3|Ajoutez une fonctionnalité personnalisée à votre site Web WordPress

Maintenant que vous savez comment les crochets fonctionnent, il est temps d’utiliser ces connaissances avec quelques exemples réels. Tout d’abord, je vais vous donner un exemple. Ensuite, je vais vous donner quelques conseils sur la façon de trouver du code personnalisé correspondant à vos besoins sur des sites Web comme celui-ci ou le site Stack Overflow .

Donnez aux utilisateurs un rôle spécifique lorsqu’ils s’inscrivent

Dans ce code, nous donnerons le rôle “VIP” aux utilisateurs lorsqu’ils créent un compte sur votre site Web. Si le rôle d’utilisateur n’existe pas, nous le créons.

/** When a user creates an account, WordPress uses the 'user_register' action hook */
\add_action('user_register', 'addVipRole');
/** At this point, the user is already created, we only need to change his role */
function addVipRole($userId)
{
    /** First, we make sure that the user exists */
    if( $user = \get_user_by('ID', $userId)) {
        /** We set the role we want to give to the user */
        $role = 'vip';
        /** We test if the role exists. Otherwise, we create it */
        if (!\wp_roles()->is_role($role)) {
            $role = \add_role('vip', __('VIP User', 'testdomain'));
        }
        /** Now we give the role to the user */
        $user->set_role($role);
    }
}

C’est aussi simple que ça. Si vous souhaitez afficher d’autres informations ou exécuter un shortcode, c’est également possible. Tout ce qu’il faut, c’est quelques recherches.

4|Ressources utiles

Business Bloomer Visual Hook Guide : Vous y trouverez beaucoup de crochets que vous pouvez utiliser pour afficher des informations ou ajouter votre propre contenu sur de nombreuses pages différentes. C’est une ressource très utile, surtout si vous utilisez WooCommerce.

Stack Overflow : Ce site Web est couramment utilisé par de nombreux développeurs et il a une grande communauté. Ils sont également prêts à aider les personnes qui ne sont pas des développeurs et à vous donner des guides étape par étape. Vous y trouverez beaucoup d’extraits de code utiles.

Nos extensions

Nous avons créé des extensions performantes et largement plébiscitées pour WooCommerce. Boostez vos ventes grâce à nos solutions

WooRewards

Découvrez l'extension de fidélité la plus puissante pour WooCommerce. Systèmes simples ou par niveaux, parrainages, réseaux sociaux, badges et succès, vous y trouverez tous les outils pour construire VOTRE programme de fidélité

En savoir plus

VIP Memberships

VIP Memberships est un outil complet de gestion d'adhésions (memberships) pour votre site WooCommerce. Vendez des abonnements à vos clients et faites les profiter d'avantages comme des prix préférentiels ou des produits exclusifs

En savoir plus

Virtual Wallet

Offrez à vos clients un portefeuille virtuel sur votre site web. Laissez-lez emmagasiner de l'argent en achetant vos produits et utiliser ce crédit lors de futurs achats. Cette extension propose aussi un outil de carte cadeaux complet

En savoir plus

Referral Codes

Gagnez de nouveaux clients grâce à cet outil complet de référencement. Que ce soit par le biais d'influenceurs ou de simples référents, récompensez les ainsi que les nouveaux clients qu'ils amènent

En savoir plus

Laissez un commentaire

Vous devez être connectés afin de publier un commentaire.