こんにちは私はフッターにwordpressのデフォルトのjQueryを移動する方法を探していたと私はこの答えを見ました: https://wordpress.stackexchange.com/a/225936/50584
それで、私は私の子供のテーマのfunctions.php
ファイルでこのアプローチを試みました:
add_action( 'wp_enqueue_scripts', function() {
// Move jQuery to the footer
wp_scripts()->add_data( 'jquery', 'group', 1 );
wp_scripts()->add_data( 'jquery-core', 'group', 1 );
wp_scripts()->add_data( 'jquery-migrate', 'group', 1 );
});
しかし、それはフッターにjqueryをプッシュしていません。何が考えられているのでしょうか。 de-register
とre-register
のやり方を避けたいのです。
任意の助けは非常に高く評価されます。
重要な更新: _ WP v3.9 de-register
とre-register
オプションを使うよりも、jqueryスクリプトをフッターに入れる方法はありません。作者が以下に指摘したように、それは単にできない。
フック$scripts
のパラメータwp_default_scripts
を使うべきです。このフックではすべてのデフォルトスクリプト、さらにjQueryをキューに入れました。フッターにロードするためのグループのように、彼のデータを変更できます。
add_action( 'wp_default_scripts', '_print_jquery_in_footer' );
function _print_jquery_in_footer( $scripts ) {
if ( ! is_admin() )
$scripts->add_data( 'jquery', 'group', 1 );
}
あなたの質問の例のように、匿名関数による新しいコードスタイルでも。 PHP 5.3以降で可能です。
add_action(
'wp_default_scripts',
function( $scripts ) {
if ( ! is_admin() )
$scripts->add_data( 'jquery', 'group', 1 );
}
);
編集 :これは、3.9より前のバージョンのWordPressでのみ動作します。