J'ai eu cette image d'un livre électronique pour le développement de plugins WP. Pourriez-vous m'expliquer pourquoi les plugins sont chargés avant les pluggables.
Directement à partir de la source pour pluggable.php
:
<?php
/**
* These functions can be replaced via plugins. If plugins do not redefine these
* functions, then these will be used instead.
*
* @package WordPress
*/
?>
Donc, voici votre réponse, les fonctions dans pluggable.php
sont destinées à être remplacées par Plugins .
Re: ordre de chargement:
Voir ce message de Konstantin Kovshenin . Les points pertinents (10-15):
wp_get_active_and_valid_plugins()
récupère la liste de tous les fichiers de plug-in actifs à charger et les inclut. C'est le point où votre code de plug-in est exécuté, les fonctions, les classes définies, etc.- Inclut
wp-includes/wp-pluggable.php
etwp-includes/wp-pluggable-deprecated.php
qui incluent des fonctions (et des fonctions obsolètes) pouvant être redéfinies par des plugins. Commewp_mail()
pour un mailing plus avancé,wp_authenticate()
pour d'autres méthodes d'authentification, etc.wp_set_internal_encoding()
est appelé pour définir le codage interne en fonction de l'option blog_charset.wp_cache_postload()
est appelé si la mise en cache des objets est activée.- À ce stade, une action
plugins_loaded
est déclenchée. Il s'agit de la toute première action (après le déclenchement de muplugins_loaded avant le chargement des plugins WordPress non multi-sites) à laquelle avant l’initialisation car WordPress n’a pas encore été initialisé, du moins pas complètement.
Donc, simplifié:
pluggable.php
est chargéplugins_loaded
action est déclenchéeQuel est l'ordre attendu.
(Remarque: tout cela se passe en wp-settings.php
.)
Veuillez noter que vous ne pouvez jamais être sûr qu'un plugin ultérieur ne remplacera pas votre pluggable ! J'ai écrit sur la liste de diffusion wp-hackers à ce sujet il y a quelque temps.
Il y a aussi un autre fil sur wp-hackers qui dit qu'il n'y a pas de solution de repli mise en œuvre. Veuillez également lire le ticket de train associé .