2
muプラグインプラグインで、カスタム投稿タイプのflush_rewrite_rulesを使用する最良の方法は?
(とりわけ)カスタム投稿タイプをインスタンス化するプラグインを書いています。これはマルチサイトプラグインであり、mu-pluginsディレクトリにあります。 この状況でflush_rewrite_rules()を処理するためのベストプラクティスは何ですか?「通常の」プラグインの場合、これはアクティベーションフックで行います。これらのフックは使用できないため、必須のプラグインでは不可能です。 これはカスタム投稿タイプを登録した後の「1回限りの」イベントであるため、CPTを登録するクラスで次のようなことを行うのは理にかなっています。 private function check_flush_my_CPT() { global $wp_rewrite; if ( !get_option('my_plugin_firstrun') ) { $wp_rewrite->init(); $wp_rewrite->flush_rules(true); update_option('my_plugin_firstrun', 'yes'); } } public function register_my_CPT() { // do all the CPT setup steps for the $args array... register_post_type('my_CPT', $args); $this->check_flush_my_CPT(); } add_action( 'init', array(&$this, 'register_my_CPT' ) ); したがって、CPT登録はすべての「init」アクションで発生しますが、この権限がある場合、書き換えルールのフラッシュは1回だけ発生します。 これまで。 私は正しい軌道に乗っていますか? (編集):試してみたところです。私のCPTは404 not …