いくつかの変数が宣言された後、私は自分のフッターで実行しなければならないスクリプトがあります。私が自分のフッターファイルに直接コードを入れるだけでうまくいきますが、ベストプラクティスはfunctions.phpとwp_localize_scriptを使って行うべきだと私は考えています。
残念ながらそれはうまくいきません。スクリプトは常にヘッダーに出力されます。どこで問題があるのですか?ご協力ありがとうございます。
add_action( 'wp_enqueue_scripts', 'mytheme_enqueue_front_page_scripts' );
function mytheme_enqueue_front_page_scripts() {
wp_register_script('flowplayer_object',
get_bloginfo('stylesheet_directory') . '/_/js/flowplayer/flowplayer-object-creator.js' );
// last 'true' in wp_enqueue_script should force this into footer, right?
wp_enqueue_script( 'flowplayer_object','','',true, true );
$data = array( 'my_stylesheet_path' => __( get_bloginfo('stylesheet_directory') ) );
wp_localize_script( 'flowplayer_object', 'my_data', $data );
}
あなたはそれをレジスタと一緒にフッターに表示するように設定すべきです、それであなたのコードはこのように見えるべきです:
wp_register_script(
'flowplayer_object',
get_bloginfo( 'stylesheet_directory' ) . '/_/js/flowplayer/flowplayer-object-creator.js',
array(), // these are your dependencies, if you need jQuery or something, it needs to go in that array
false, // set a version if you want
true // this will put it in the footer
);
wp_enqueue_script( 'flowplayer_object' );