WordPress
エンキュースクリプト
サーチ…
構文
- wp_enqueue_script($ handle、$ src、$ deps、$ ver、$ in_footer)
パラメーター
パラメータ | 詳細 |
---|---|
$ handle | (文字列) (必須)スクリプトの名前。一意である必要があります。 |
$ src | (string) (オプション)WordPressのルートディレクトリを基準にした、スクリプトのフルURLまたはスクリプトのパス。 デフォルト値:false |
$ deps | (array) (オプション)このスクリプトが依存する登録済みスクリプトハンドルの配列。 デフォルト値:array() |
$ ver | (string | bool | null) (オプション)スクリプトのバージョン番号を指定する文字列(存在する場合)。これは、URLにキャッシュ破棄のためのクエリ文字列として追加されます。 versionがfalseに設定されている場合、現在インストールされているWordPressのバージョンと同じバージョン番号が自動的に追加されます。 nullに設定すると、バージョンは追加されません。 デフォルト値:false |
$ in_footer | (bool) (オプション) <head> ではなく</body> 前にスクリプトをエンキューするかどうかを指定します。 デフォルト値:false |
functions.phpでのスクリプトのエンキュー
テーマのjs/
フォルダにあるcustom.js
スクリプトを追加する場合は、そのテーマをエンキューする必要があります。 functions.php
追加する
<?php
add_action( 'after_setup_theme', 'yourtheme_theme_setup' );
if ( ! function_exists( 'yourtheme_theme_setup' ) ) {
function yourtheme_theme_setup() {
add_action( 'wp_enqueue_scripts', 'yourtheme_scripts' );
add_action( 'admin_enqueue_scripts', 'yourtheme_admin_scripts' );
}
}
if ( ! function_exists( 'yourtheme_scripts' ) ) {
function yourtheme_scripts() {
wp_enqueue_script( 'yourtheme_custom', get_template_directory_uri().'/js/custom.js', array( 'jquery' ), '1.0.0', true );
}
}
if ( ! function_exists( 'yourtheme_admin_scripts' ) ) {
function yourtheme_admin_scripts() {
wp_enqueue_script( 'yourtheme_custom', get_template_directory_uri().'/js/custom.js', array( 'jquery-ui-autocomplete', 'jquery' ), '1.0.0', true );
}
}
IE専用のスクリプトをエンキューする
add_action( 'wp_enqueue_scripts', 'enqueue_my_styles_and_scripts' );
/**
* Enqueue scripts (or styles) conditionally.
*
* Load scripts (or stylesheets) specifically for IE. IE10 and above does
* not support conditional comments in standards mode.
*
* @link https://gist.github.com/wpscholar/4947518
* @link https://msdn.microsoft.com/en-us/library/ms537512(v=vs.85).aspx
*/
function enqueue_my_styles_and_scripts() {
// Internet Explorer HTML5 support
wp_enqueue_script( 'html5shiv',get_template_directory_uri().'/js/html5shiv.js', array(), '3.7.3', false);
wp_script_add_data( 'html5shiv', 'conditional', 'lt IE 9' );
// Internet Explorer 8 media query support
wp_enqueue_script( 'respond', get_template_directory_uri().'/js/respond.js', array(), '1.4.2', false);
wp_script_add_data( 'respond', 'conditional', 'lt IE 9' );
}
特定のページの条件付きでスクリプトをエンキューする
WordPressの条件演算子を使用して、Webサイトの特定のページにスクリプトをエンキューすることができます。
function load_script_for_single_post(){
if(is_single()){
wp_enqueue_script(
'some',
get_template_directory_uri().'/js/some.js',
array('jquery),
'1.0.0',
false
);
}
}
add_action('wp_enqueue_scripts','load_script_for_single_post');
上記の例では、現在のWebページがシングルポストの場合、スクリプトはエンキューされます。さもなければ、 wp_enqueue_script関数は実行されません。
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow