web-dev-qa-db-ja.com

Initアクションの後、フッターにスクリプトをエンキューするのに役立ちます

Functions.phpでは、register_scripts()とload_scripts()を設定し、それらを 'init'アクションにフックしました。

ページの読み込みを最適化するために、フッターに読み込まれるすべてのスクリプトを登録しました。

私がregister_scripts()に登録したスクリプトの中には、必要なときにのみロードしたいのでload_scripts()にエンキューされていないものがあります。

たとえば、レンダリングされているページに 'jquery-gallery'が必要なテンプレートパーツ 'gallery.php'が含まれている場合は、残りのフッタースクリプトが読み込まれた後にのみ、そのファイルからエンキューします。インラインスクリプトでもこれを行う必要があります。

私が自分自身についてよく説明したことを願っています...そうでなければ尋ねてください。

2
0al0

ページのレンダリング中( "wp_head"フックの後)にスクリプトをフッターにエンキューする場合は、次のようにwp_print_scripts(またはwp_print_footer_scripts)を手動でwp_footerアクションに追加する必要があります。

wp_enqueue_script( 'jquery-gallery', null, array( 'jquery' ), null, true );
add_action( 'wp_footer', create_function( '', 'wp_print_scripts( "jquery-gallery" );' ) );
2
goldenapples