J'essaie de créer un plugin d'automatisation de mise à jour WordPress. Ici, j'ai deux options pour activer et désactiver les mises à jour.
ex: defined( 'AUTOMATIC_UPDATER_DISABLED',true )
2.via add_filter
ex: add_filter( 'allow_major_auto_core_updates', '__return_true', 1 );
mon problème, c’est si j’ai désactivé les mises à jour via define
et l’a également activé via add_filter
lequel fonctionnera? Est-ce que add_filter
annule le mot "définir"? ou define
remplacer 'add_filter'?
En parcourant la méthode Core_Upgrader::should_update_to_version()
, il semble que nouspouvons remplacerle
defined( 'WP_AUTO_UPDATE_CORE' ) // true (all), false, minor
check, utilisé pour configurer les booléens variables$upgrade_dev
, $upgrade_minor
et $upgrade_major
locaux, avec les filtres suivants:
...
apply_filters( 'allow_dev_auto_core_updates', $upgrade_dev )
...
apply_filters( 'allow_minor_auto_core_updates', $upgrade_minor )
...
apply_filters( 'allow_major_auto_core_updates', $upgrade_major )
...
Donc, ces filtres ont le dernier mot sur la vérification constante WP_AUTO_UPDATE_CORE
.
De même, le filtre automatic_updater_disabled
peut remplacer le contrôle constant AUTOMATIC_UPDATER_DISABLED
.
Mais notez que nous ne pouvons pas remplacer la constante elle-même .