私は今WordPress 3.1.4を使っています。私はどこで(どのフックを)使用するのか混乱しています。
質問:
init
にスクリプト/スタイルを登録/エンキューしますかadmin_print_styles-{xxx}
がないの?時間内-スクリプト/スタイルがページに出力されるよりも早い場合、そうでない場合は遅すぎます。
条件付きである必要があります。そうでない場合は、必要のないものをロードし、パフォーマンスと機能の問題を引き起こします。このため、WP環境をロードする必要があります。
register-スクリプト/スタイルに関するWP詳細を説明し、その情報を保存します。
enqueue多くの場合、1回のwp_enqueue_*()
呼び出しでレジスタと一緒にまとめられます)-これは、WPに、設定(依存関係、ヘッダー/フッターのロード)に従って、スクリプト/スタイルをキューに追加するよう指示します)。
---(print-WPがキューを処理し、特定の何かをロードしようとしたときに発生しますまたはwp_print_*()
関数で明示的に実行した場合。
wp_head()
wp_head
(1)wp_enqueue_scripts()
wp_enqueue_scripts
"これが必要なものです
(8)wp_print_styles()
(9)wp_print_head_scripts()
wp_footer()
wp_footer
wp_print_footer_scripts()
さらに深くなりますが、これはシンプルであり、重要なポイントには十分です:
wp_enqueue_scripts
は、フロントエンドでスクリプトとスタイルを登録およびキューイングするための最も適切なフックであり、特にそのためにあります。
init
はこれとは何の関係もありませんが、動作しますが、-これまで使用していたCodexの推奨事項は間違っていました;
wp_print_footer_scripts()
呼び出しの前の任意の時点で、フッターのキューイングスクリプト(スタイルではなく)で回避できます。
wp_print_*
フックはレジスタ/キューには適していません、出力が既に発生している場合のコード内のポイントです。これらは、手動/カスタムスクリプト/スタイルの出力に適しています。
まあ、そこの機能はさらに複雑で、精巧でネストされています。
まず最初に単にadmin_enqueue_scripts
フックを使用(条件付きのものには$hook_suffix
globalを渡します)、すべての場合、ほとんどの場合うまく動作します。
複雑なものが必要な場合は、admin-header.php
を調べ、そこから適切なフックを探します。
login_enqueue_scripts
という名前の特定のフックがあります。