web-dev-qa-db-fra.com

Comprendre les conventions de dénomination des fonctions Wordpress

De nombreuses fonctions Wordpress suivent les conventions de nommage. Les plus connues d'entre elles sont probablement les fonctions the_*(), telles que the_post(), utilisées dans The Loop .

Il est évident que la famille de fonctions is_*() appartient au Conditionals . Cependant, quels sont lesthèmes communsreprésentés par les préfixes de fonction suivants:

  • add_*()
  • register_*()
  • wp_*()
  • wp_insert_*()

Il me semble que les fonctions wp_insert_*() effectuent toutes des instructions INSERT sur la base de données. C'est-à-dire qu'ils changent l'état de l'application.Est-ce correct?

Il me semble que les fonctions register_*() n’affectent pas la base de données. C'est-à-dire qu'ils rendent les constructions disponibles uniquement pour l'appel de la page en cours.Est-ce correct?

Existe-t-il un thème commun aux fonctions wp_*()? S'agit-il simplement d'un ancienpseudo-espace de noms qui n'est plus appliqué?

Les fonctions add_*() semblent être les plus illogiques. Certaines affectent la base de données, telles que add_post_meta(), et d'autres pas add_theme_support(). Qu'est-ce qui est commun aux fonctions add_*() et pourquoi ne s'appellent-elles pas wp_insert_post_meta() et register_theme_support() pour des raisons de cohérence?

6
dotancohen

En résumé, il ne faut pas oublier les conventions de nommage ni la cohérence dans WordPress, car ce sont des "normes" non existantes.

Pour être vraiment honnête, WordPress ne suit aucun ensemble fixe de règles ou de normes, même s'il existe un manuel sur les normes de codage disponible pour les développeurs WordPress. Oui, cela aurait été agréable s'ils avaient suivi un certain schéma prévisible, mais ce n'est pas le cas.

WordPress a plus de 10 ans et n'a jamais été conçu pour être aussi grand qu'aujourd'hui. Au cours de cette période, de nombreux développeurs principaux sont allés et venus, et comme WordPress est aujourd’hui un projet de communauté auquel tout le monde peut soumettre des idées d’améliorations, de nouvelles fonctionnalités, etc., vous trouverez beaucoup de styles de codage et de "standards" différents ( comme les conventions de nommage ) dans le noyau.

Vous êtes totalement sur la mauvaise piste ici si vous allez utiliser uniquement les conventions de dénomination pour trouver des modèles communs entre des fonctions basées uniquement sur des mots principaux tels que add, register et the.

7
Pieter Goosen