Un utilisateur a demandé 👇

Excellent plugin BTW. Indispensable.

Cependant, après avoir installé un plugin appelé Go Fetch Jobs (pour WP Job Manager), l’administrateur se bloque avec des erreurs ELM.

Je peux très bien exécuter l’un ou l’autre des plug-ins, mais je ne peux pas faire les deux en même temps. Voici les erreurs. J’espère que tu peux aider.

PHP Fatal error:  Uncaught RuntimeException: The action name "elm-start-auto-setup" is already in use. in ----wp-content/plugins/error-log-monitor/vendor/ajax-wrapper/AjaxWrapper.php:156
        Stack trace:
        Ajaw_v1_Action->register() ----wp-content/plugins/error-log-monitor/vendor/ajax-wrapper/AjaxWrapper.php:97
        Ajaw_v1_ActionBuilder->register() ----wp-content/plugins/error-log-monitor/Elm/SetupWizard.php:20
        Elm_SetupWizard->__construct(Object(Elm_Plugin)) ----wp-content/plugins/error-log-monitor/Elm/Plugin.php:465
        Elm_Plugin->initSetupWizard('') ----wp-includes/class-wp-hook.php:286
        WP_Hook->apply_filters(NULL, Array) ----wp-includes/class-wp-hook.php:310
        WP_Hook->do_action(Array) ----wp-includes/plugin.php:453
        do_a in ----wp-content/plugins/error-log-monitor/vendor/ajax-wrapper/AjaxWrapper.php on line 156 ----wp-settings.php:450


(@Ombre blanche)

il y a 1 an, 11 mois

Merci pour le rapport. Après quelques recherches, l’erreur semble être causée par un problème de compatibilité mineur dans Go Fetch Jobs. Cela pourrait probablement être corrigé en modifiant ce plugin afin qu’il exécute son code source initial * avant * le plugins_loaded action.

Explication technique :

Utiliser les deux plugins [scbFramework](https://github.com/scribu/wp-scb-framework/wiki). Les deux plugins utilisent le scb_init($callback) pour exécuter la récupération initiale après le chargement de scbFramework. Pour autant que je sache, le code du framework de base peut gérer cela de deux manières :

a) Lorsqu’une socket appelle scb_init avant de plugins_loaded action, le cadre attend jusqu’à ce que plugins_loaded puis exécutez tous les appels enregistrés. b) Lorsqu’une socket appelle scb_init ensuite plugins_loadedle framework exécute immédiatement tous les retraits enregistrés.

La cause principale du problème est que le framework ne semble pas surveiller les rappels qu’il a déjà effectués. Cela signifie que si vous avez un plugin qui appelle scb_init avant le chargement de chaque plugin (par exemple Error Log Monitor) et un autre plugin qui appelle la même fonction dans son plugins_loaded hook (par exemple Go Fetch Jobs), certains rappels seront exécutés deux fois. Dans ce cas, certains codes définis dans le moniteur de journal des erreurs sont exécutés deux fois et génèrent une erreur fatale.

Je pense que ce problème pourrait être évité en s’assurant que tous les plugins appellent scb_init dès que possible au lieu d’attendre plugins_loaded action.


(@cbcbcb)

il y a 1 an, 11 mois

Merci pour votre réponse Janis. Est-ce un problème qui sera résolu dans une prochaine version ? J’aimerais réactiver un ELM. Merci!


(@Ombre blanche)

il y a 1 an, 11 mois

Je vais ajouter un flux de travail qui aidera probablement. Cependant, pour résoudre complètement le problème, il était également nécessaire de modifier les tâches Go Fetch. Sinon, ce plugin peut provoquer des conflits avec d’autres plugins.

Cela a-t-il résolu votre problème ?

Was this helpful?

0 / 0

Leave a Reply 0

Your email address will not be published. Required fields are marked *