• 解決済 trustring

    (@trustring)


    WP5.9.7、WP6.0.1で検証しました。

    まず任意のWPプラグインのメインPHPファイルのクラスに以下のように書きます。
    (見通しを優先してもろもろ省略してます)

    function __construct() {
    	add_filter( 'upgrader_post_install', [ $this, 'check_update' ], 10, 3 );
    }
    
    public function check_update( $response, $hook_extra, $result ) {
    	error_log( 'called' );
    }

    このPHPファイルを含むプラグインをZIPファイル化し、WPにインストール(または既存プラグインをアップデート)すると、WP5.9.7ではログ「called」が出力されます。
    しかしWP6.0.1ではログは出力されません。

    この挙動はおそらくバグではないかと推測しています。
    何らかのご意見いただけると助かります。

    どうぞよろしくお願いします!

    • このトピックはtrustringが2年、 8ヶ月前に変更しました。
2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック投稿者 trustring

    (@trustring)

    並行して英語フォーラムにも投稿してみました。
    解決したら双方のトピックで確認できるように調整しますのでご了承ください。

    トピック投稿者 trustring

    (@trustring)

    ご報告します。
    まず表記の問題については、英語フォーラムの方で「再現しない」とのご指摘をいただき、弊社でもその確認が取れましたので取り下げます。

    なお錯覚のもとになった現象として、プラグインのZIPアップロードによる更新時に

    • upgrader_post_install
    • upgrader_process_complete

    の両フックの動作が思うようでないという問題がありました。

    確認した範囲では、これらのフックは更新時に新バージョンの側に書かれていても動作しません。
    旧バージョンの側に書かれていた場合のみ動作が確認できました。
    しかしこの点についても、英語フォーラムでサポートしてくださった方によれば本来の挙動ではないとのこと。

    なぜ動かなかったのか詳細に検証したいところでしたが、今回は他の方法で要件を満たせたこともあり、深く追求する時間が取れませんでした。
    Web上でもこのフック周りについては決定的な情報が見当たらないように思います。

    以上、疑問は残ったままですっきりとはいきませんが、簡単にご報告とさせていただきます。
    表記の問題については終了ということで、解決済みとマークしておきます。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「WP6.0.1でupgrader_post_installフックが呼ばれない」には新たに返信することはできません。