wp_script_is

説明

bool wp_script_is( string $handle [ , string $list = 'enqueued' ] )
スクリプトの状態を調べる。

パラメータ

  • $handle
    スクリプトのハンドル名を指定。
  • $list
    [3.5.0]スクリプトの状態を示す'enqueued'(または'queue')、'registered'、'to_do'、'done'のいずれかを指定(省略時は'enqueued')。

返り値

スクリプトが指定された状態であればtrueを、状態でなければfalseを返す。

注意

標準的なスクリプトの出力は次のような流れとなる。

  1. テーマやプラグインでwp_register_script関数で「登録配列(registered配列)」に追加
  2. テーマやプラグインで wp_enqueue_script関数で「出力待ち配列(queue配列)」に追加
  3. wp_headアクションで実行されるwp_print_head_scripts関数でhead要素内の分をまとめて出力
  4. wp_footerアクションで実行されるwp_print_footer_scripts関数で残り分をまとめて出力
  5. 上記のほか、一部のプラグインではwp_print_scripts関数を使用して個別に出力

スクリプトの出力時、まず出力対象の依存関係を調べ、依存関係があるスクリプトを含めて「実行対象配列(to_do配列)」に格納する。すべて実行対象配列に格納したら、スクリプトを出力→「実行済み配列(done配列)」に格納→実行対象配列から削除までの流れを、実行対象配列が空になるまで繰り返し行う。通常、実行されたスクリプトはその段階で出力待ち配列から削除されない。

本関数はパラメータ$listで指定された配列内にパラメータ$handleで指定されたスクリプトが格納されているかを調べ、その有無を返している。


使用例

  • スクリプト'myscript'が出力待ちか調べる。
    <?php if ( wp_script_is( 'myscript' ) ) : ?>
  • スクリプト'myscript'が出力済みか調べる。
    <?php if ( wp_script_is( 'myscript', 'done' ) ) : ?>

フィルター

実行するフィルターはありません。

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/functions.wp-scripts.php

最終更新 : 2019年05月29日 14:37



お勧め

WordPressと組み込まれている主なJavaScriptライブラリのバージョン一覧(2018年5月27日 更新)

WordPressの更新が遅れていたサイトを少し前に更新したところ、jQuery UI sortableを使って拡張したページに不具合が発生しました。WordPressの更新に伴って内部のjQuery UIが更新されたことに起因すると思われ、これを機にWordPressとそれに組み込まれたJavaScriptライブラリのバージョンを確認してみました。

ホームディレクトリから過去のファイルを削除する(2013年1月27日 更新)

WordPressで構築したサイトのホームディレクトリには、現在使われていないファイルが残っている時がある。3.5.1もリリースされたことだし、これを機にホームディレクトリを整理整頓した。

wp_titleからwp_get_document_titleへ(2018年5月27日 更新)

先週、WordPress 4.4 beta1(以降4.4 beta1)が公開されました。この4.4 beta1では新テーマ「Twenty Sixteen」が追加されたほか、wp-includesディレクトリ以下のファイルが大幅に変更された感じです。

検索ワード「-10,000円」を検索できるようにしたい(2018年5月27日 更新)

とあるサイトで「-10,000円」をキーワードに検索した際、予想と異なるページが表示され、ちょっと驚いた。今回はその原因調査と対策についてまとめてみた。

ダッシュボードのフィードボックスをカスタマイズ(2011年7月8日 更新)

管理者ページのトップページ「ダッシュボード」には、「WordPress 開発者ブログ」と「WordPress フォーラム」という2つのフィードボックスが表示されている。自分のような開発者には有益な情報をもたらしているが、一般の方には必要のない情報かもしれない。今回はこのフィードボックスをカスタマイズする方法を紹介する(管理者権限)。