web-dev-qa-db-ja.com

wp_register_script()はどれほどリソースを消費しますか?

このコードで、投稿のコンテンツにショートコードがある場合にのみ、特定のスクリプトをロードするためにhas_shortcode()関数を使用しようとしています。

wp_register_script( 'shortcode-js-file' , FILE_URI, array( 'jquery'), '', true );

if(isset($post->post_content) && has_shortcode($post->post_content, 'shortcode_name')) {
  wp_enqueue_script( 'shortcode-js-file');
}

そのため、上記のコードでは、投稿にそのショートコードがあるかどうかにかかわらず、そのショートコードがあるかどうかにかかわらず、すべてのページにスクリプトを登録しています。

私が知りたいのは、ifステートメントの中にwp_register_scriptを入れるべきかどうかです。それがあまりにもリソース集約的でないなら、私はむしろwp_register_scriptコードをすべて1つの関数にまとめたいので、それを外側に残すことにします。

PS。私の問題を明確に示すために、私が使用しているフックや関数は追加しませんでした。私が調べたいものにとって重要ではないからです。

2
user1981248

wp_register_script()は配列にエントリを追加するだけで、リソースを大量に消費することはありません。 WP_Dependencies::add()を参照してください。

スクリプトを早めに登録する ことで衝突を避けることができます ので、wp_loadedの場合は必ずそうしてください。

1
fuxia