質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

440閲覧

functions.phpでJSをページごとに振り分けしたい

nddf

総合スコア23

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2022/03/08 06:05

・番号リスト前提・実現したいこと
WordPressでページごとにJSを振り分けたい
functions.phpで書く

・番号リスト発生している問題・エラーメッセージ
下記のように書いてるのですが、headerからfooterに移動させたjQueryしか出力されません。。
function register_script 以降のjsが読み出されなく、書き方が間違っておりますでしょうか?ご教授お願いいたします。

・該当のソースコード

php

1<?php 2function custom_enqueue_scripts(){ 3 if(!is_admin()){ // 管理画面以外 4 wp_enqueue_script('jquery'); 5 remove_action('wp_head', 'wp_print_scripts'); 6 remove_action('wp_head', 'wp_print_head_scripts', 9); 7 remove_action('wp_head', 'wp_enqueue_scripts', 1); 8 add_action('wp_footer', 'wp_print_scripts'); 9 add_action('wp_footer', 'wp_print_head_scripts'); 10 add_action('wp_footer', 'wp_enqueue_scripts'); 11 } 12} 13 14function register_script() { 15 // 登録するjQuery一覧 16 wp_register_script( 'common-script', get_template_directory_uri() . '/assets/js/common.js', array( 'jquery' ), '1.0.0', true ); 17 wp_register_script( 'rellax-script', get_template_directory_uri() . '/assets/js/rellax.min.js', array( 'jquery' ), '1.0.0', true ); 18 wp_register_script( 'bgswitcher-script', get_template_directory_uri() . '/assets/js/jquery.bgswitcher.js', array( 'jquery' ), '1.0.0', true ); 19 wp_register_script( 'sliderPro-script', get_template_directory_uri() . '/assets/js/jquery.sliderPro.min.js', array( 'jquery' ), '1.0.0', true ); 20 wp_register_script( 'accordion-script', get_template_directory_uri() . '/assets/js/accordion.js', array( 'jquery' ), '1.0.0', true ); 21 wp_register_script( 'control-script', get_template_directory_uri() . '/assets/js/script.js', array( 'jquery' ), '1.0.0', true ); // footerのscript部分をjsファイルにした 22} 23function add_script() { 24 25 // 共通 26 register_script(); 27 wp_enqueue_script( 'common-script' ); 28 29 // トップページ(front) 30 if (is_front_page()) { 31 wp_enqueue_script( 'rellax-script' ); 32 wp_enqueue_script( 'bgswitcher-script' ); 33} 34 elseif(is_page( 'staff' )) { 35 // 固定ページ(staff) 36 wp_enqueue_script( 'rellax-script' ); 37 wp_enqueue_script( 'sliderPro-script' ); 38} 39 elseif(is_page( 'qa' )) { 40 // 固定ページ(qa) 41 wp_enqueue_script( 'accordion-script' ); 42} 43 44 elseif(is_front_page() || is_page( 'staff' ) || is_page( 'qa') ) { 45 // トップページ(front),固定ページ( qa,staff )の処理で使用 46 wp_enqueue_script( 'control-script' ); 47 } 48} 49 50add_action( 'wp_enqueue_scripts', 'custom_enqueue_scripts' ); 51add_action( 'wp_print_script', 'add_script' ); 52?> 53

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

add_action( 'wp_print_script', 'add_script' );

hookに指定するのは[wp_print_script]ではなく[wp_print_scripts]ではないですか?

投稿2022/03/08 06:33

編集2022/03/08 06:33
PlugOut777

総合スコア917

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nddf

2022/03/08 06:45

ありがとうございます!なんとも初歩的でした。。助かりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問