WordPressでPHP変数をJavaScriptに渡す方法
WordPressのテーマやプラグインを作成しているときに、PHPのデータ/値を使用する必要のあるJavaScriptコードがある場合があります。たとえば、JavaScriptコードには次の値が必要です。
-
Homepage URL
Theme option values
WordPress posts data
etc
これを行う最も簡単な方法は、header.phpテーマファイルまたはwp_headフックでこれらの値をJavaScriptオブジェクトに初期化することです。例えば :
<script> var myThemeParams = { homeURL: <?php echo home_url(); ?>, themeOptions: <?php echo get_theme_mod( 'mytheme_options', false ); ?>, } </script>
それは機能しますが、WordPressにはそのようなことをするための機能が提供されています。これはwp_add_inline_scriptと呼ばれます。
wp_add_inline_script( $handle, $data, $position = 'after' )
-
$ handle:インラインスクリプトを追加するスクリプトの名前。
$ data:追加するJavaScriptを含む文字列。
$ position:ハンドルの前または後にインラインスクリプトを追加するかどうか。
この関数は、JavaScriptコードの前後にインラインスクリプトを追加します。実際には、PHP変数をJavaScriptに渡す以外にも多くのことができます。ここで別のユースケースを見ることができます。
したがって、PHPからJavaScriptに変数を渡すためにwp_add_inline_scriptを使用するには、JSファイルの前にインラインスクリプトを追加するように、positionプロパティをbeforeに設定する必要があります。次に、JavaScriptオブジェクトを初期化し、PHPからのデータで値を設定します。
$myThemeParams = array( 'homeURL' => home_url(), 'themeOptions' => get_theme_mod( 'mytheme_options', false ) ); wp_enqueue_script( 'my-theme-script', get_template_directory_uri() . '/js/script.js' ); wp_add_inline_script( 'my-theme-script', 'var myThemeParams = ' . wp_json_encode( $myThemeParams ), 'before' );
JavaScriptでは、次のようにアクセスできます。
console.log( myThemeParams.homeURL ); console.log( myThemeParams.themeOptions );
関連事項
- 2024-04-25 AppleはTSMCの3nmプロセスに基づくカスタムAIサーバーチップに取り組んでいると発表
- 2024-04-25 研究者はスーパーキャパシタ部品を使用して新しいタイプのナトリウムイオンバッテリーを構築
- 2022-08-20 Google はオリジナルでないコンテンツを防止することで検索結果を改善しようとしています
- 2022-08-16 Microsoft は、9 月 13 日に Internet Explorer と EdgeHTML で TLS 1.0 と 1.1 を無効にします。
- 2022-08-15 Google がウェブ用の Read Along をリリース: 子供たちに読み方を教える
あなたのコメント
- forex 1楼
- Hi would you mind letting me know which hosting company you're working with? I've loaded your blog in 3 completely different web browsers and I must say this blog loads a lot faster then most. Can you recommend a good web hosting provider at a fair price? Thank you, I appreciate it!
- 发布于 2022/03/17 09:11
- 暑さランキング
-
- Windows10からWindows11に無料でアップグレードする方法
- フォームページの送信が重複しないようにするには
- WordPressでPHP変数をJavaScriptに渡す方法
- 弱い型のプログラミング言語とは
- 改行と段落記号の違いについて
- HTML5のwindow.postMessageとは何ですか?
- Webフォームのボタンにブラウザの進む・戻る機能を実装する方法
- テーブルのレイアウトが急に分かりづらくなりました
- PHPが私のウェブサイトまたはWordPressに適しているかどうかを判断する方法は?
- スクリプト言語とは
- 並び替えられないリストの役割 ulタグ
- ダイナミックページにおける自動キャッシングの影響
- XMLドキュメント宣言とは何ですか?
- background-positionプロパティにはどのような値を使用できますか?
- 固定と絶対の違いは何ですか?
- 最新の回答
-
-
フォームページの送信が重複しないようにするには
binary options system strategy page 回答 2022-04-01 03:42:00
-
PHPが私のウェブサイトまたはWordPressに適しているかどうかを判断する方法は?
แอพเปลี่ยนรูปเป็นภาพวาด 回答 2022-03-27 18:27:12
-
ダイナミックページにおける自動キャッシングの影響
50 deposit binary options 回答 2022-03-24 05:31:20
-
フォームページの送信が重複しないようにするには
free binary options signals providers of goods 回答 2022-03-20 12:29:02
-
フォームページの送信が重複しないようにするには
binary options strategy 5 minutes 15 min no loss acord 回答 2022-03-20 09:44:29
-