Est-ce une pratique acceptable pour le développement de thèmes WordPress ?

Publié par Jean-Michel le

Je ne pense pas que ce soit la bonne façon de faire les choses, peut-être que je me trompe ou que je manque quelque chose, mais cela me semble inutile. Est-ce correct? Quelles sont les implications, le cas échéant, de faire les choses de cette façon ?

Dans le fichier de fonctions, toutes les fonctions sont encapsulées dans une classe :

class This_Theme
{
   function example_fucntion(
      echo 'example';
   );
}

Ensuite, dans le thème, ils appellent la fonction de manière statique :

This_Theme::example_function();

N’est-ce pas emballer inutilement la fonction dans une classe pour l’appeler statiquement ? Ne serait-il pas plus logique de simplement laisser de côté la classe ?

Solution n°1 trouvée

C’est une question d’opinion et de style de codage. Ce type de style de codage est très populaire dans le développement de plugins et de thèmes wordpress. Je ne reprocherai à personne de le faire, mais je conviens que la pratique d’avoir des classes qui n’ont qu’une méthode statique ou utilisées comme singleton dans le contexte de wordpress est juste BS .

Cela était justifié lorsque les versions PHP avec espacement des noms n’étaient pas assez populaires et que l’emballage du code dans une classe fournissait essentiellement l’espacement des noms, mais maintenant que la dernière version sans espacement des noms a été EOL il y a près de 5 ans, la pratique est ridicule et rend juste certains types d’aspects de codage sont plus difficiles et trop verbeux.

Mais à la fin, c’est le code du développeur, et il doit écrire le code d’une manière qui sera plus propre et plus maintenable pour lui et s’il préfère le codage POO au fonctionnel, il n’y a rien de mal à cela.

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *