web-dev-qa-db-ja.com

フッタにjQueryをロードする方法 - 私も何にもうきききません

私がここで見つけたものも含めて、私がインターネット上で見つけたすべての解決策を試したが、私のテーマには何も働かない - jQueryは常にヘッダーにロードする。私はグーグルからのものを使おうとします、しかし、私はフッターだけで、ローカルのものも使ってうれしいです。これは私が今持っているものです:

   function my_init() {
    if (!is_admin()) {
        wp_deregister_script('jquery');
        wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js?ver=1.10.2', false, '1.10.2', true);
        wp_enqueue_script('jquery');

        // load a JS file from my theme: js/theme.js
        //wp_enqueue_script('my_script', get_bloginfo('template_url') . '/js/theme.js', array('jquery'), '1.0', true);
    }
}
add_action('init', 'my_init');

なぜ解決策が私のために働かないのかという考えはありますか?

1
whitelord

スクリプトをフッターに読み込む必要があるので、スクリプトを関数に追加する必要があります。

このメソッドは、jQueryに依存する親テーマに対して機能します。

子テーマの場合

変化する:

get_template_directory_uri()

get_stylesheet_directory_uri()

親テーマのコード例:

function wpsites_load_scripts() {

wp_enqueue_script( 'script-name', get_template_directory_uri() . '/js/example.js', array(), '1.0.0', true );
}

add_action( 'wp_enqueue_scripts', 'wpsites_load_scripts' );

5番目のパラメーターは、スクリプトのロード先を決定します。

$ in_footer

通常、スクリプトはHTML文書の中に置かれます。このパラメータがtrueの場合、スクリプトは終了タグの前に配置されます。これでは、テーマの適切な場所にwp_footer()テンプレートタグが必要です。

デフォルト:false

出典 http://codex.wordpress.org/Function_Reference/wp_enqueue_script

1
Brad Dalton