[ 解決済 ] 子テーマに「js」を入れたい

VWSとは フォーラム Lightning [ 解決済 ] 子テーマに「js」を入れたい

[ 解決済 ] 子テーマに「js」を入れたい

  • このトピックには4件の返信、3人の参加者があり、最後にmasako.sにより2年、 7ヶ月前に更新されました。
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • 投稿者
    投稿
  • #55768

    ■ WordPress のバージョン
    バージョン: 5.8

    ■ テーマ・プラグインは全て最新版で確認してください。
    確認しました。

    ■ テーマの種類
    Lightning ( G3 ) + Lightning G3 Pro Unit

    ■ テーマのバージョン
    バージョン: 14.8.2

    ■ Pro Unit のバージョン
    バージョン: 0.9.5

    ■ スキンの種類
    Origin III

    ■ 関連しそうなプラグインを一つづつ停止して症状が改善するか確認してください。
    確認しました。

    ■ プラグインの種類・バージョン
    特になし

    ■ 期待する動作
    テーマfooter.php にjsが入っており、テーマが更新されると消えるので、子テーマに入れたい。
    子テーマに入れるとテーマを更新しても消えないとお聞きしました。
    子テーマは御社提供のサンプル「lightning_child_sample_v_0_1_2」を利用させて頂いてます。

    ■ 自分で試した事
    子テーマで同じようにfooter.php にjsを入れようと思いましたが、御社提供の子テーマサンプルにはfooter.php がありません。
    何処に入れれば良いのでしょうか。
    ご教示のほど宜しくお願い致します。

    ■ 症状が発生するブラウザ
    chrome

    ■ 実際の症状
    テーマ更新でfooter.php に入っているjsが消える

    ■ その他特記事項

    #55769

    DRILL LANCER
    モデレーター

    どのようなスクリプトを実行したいのかは不明ですが
    子テーマの functions.php に下記のような感じで追記すれば可能です。

    /**
     * Jquery 依存の JS ファイルを追加
     */
    function my_lightning_child_enquque_scripts() {
    	wp_enqueue_script( 'my-parallax', get_stylesheet_directory_uri() . '/parallax.js', array( 'jquery' ), '1.0.0', true );
    }
    add_action( 'wp_enqueue_scripts', 'my_lightning_child_enquque_scripts' );

    参考:

    パララックスについて


    https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/wp_enqueue_script

    #55801

    いつもお世話になりありがとうございます。
    footerに入れないといけない様なので、次の様に入れたんですが、動きません。
    間違えているのでしょうか。
    試行錯誤で色々調べたんですが、どうも分かりません・・・
    お手数ばかりお掛けして申し訳ありませんが、何卒宜しくお願い致します。

    <?php
    
    /*-------------------------------------------*/
    /*  カスタム投稿タイプ「イベント情報」を追加
    /*-------------------------------------------*/
    // add_action( 'init', 'add_post_type_event', 0 );
    // function add_post_type_event() {
    //     register_post_type( 'event', /* カスタム投稿タイプのスラッグ */
    //         array(
    //             'labels' => array(
    //                 'name' => 'イベント情報',
    //                 'singular_name' => 'イベント情報'
    //             ),
    //         'public' => true,
    //         'menu_position' =>5,
    //         'has_archive' => true,
    //         'supports' => array('title','editor','excerpt','thumbnail','author')
    //         )
    //     );
    // }
    
    /*-------------------------------------------*/
    /*  カスタム分類「イベント情報カテゴリー」を追加
    /*-------------------------------------------*/
    // add_action( 'init', 'add_custom_taxonomy_event', 0 );
    // function add_custom_taxonomy_event() {
    //     register_taxonomy(
    //         'event-cat', /* カテゴリーの識別子 */
    //         'event', /* 対象の投稿タイプ */
    //         array(
    //             'hierarchical' => true,
    //             'update_count_callback' => '_update_post_term_count',
    //             'label' => 'イベントカテゴリー',
    //             'singular_label' => 'イベント情報カテゴリー',
    //             'public' => true,
    //             'show_ui' => true,
    //         )
    //     );
    // }
    
    /********* 備考1 **********
    Lightningはカスタム投稿タイプを追加すると、
    作成したカスタム投稿タイプのサイドバー用のウィジェットエリアが自動的に追加されます。
    プラグイン VK All in One Expansion Unit のウィジェット機能が有効化してあると、
    VK_カテゴリー/カスタム分類ウィジェット が使えるので、このウィジェットで、
    今回作成した投稿タイプ用のカスタム分類を設定したり、
    VK_アーカイブウィジェット で、今回作成したカスタム投稿タイプを指定する事もできます。
    
    /********* 備考2 **********
    カスタム投稿タイプのループ部分やサイドバーをカスタマイズしたい場合は、
    下記の命名ルールでファイルを作成してアップしてください。
    module_loop_★ポストタイプ名★.php
    */
    
    /*-------------------------------------------*/
    /*  フッターのウィジェットエリアの数を増やす
    /*-------------------------------------------*/
    // add_filter('lightning_footer_widget_area_count','lightning_footer_widget_area_count_custom');
    // function lightning_footer_widget_area_count_custom($footer_widget_area_count){
    //     $footer_widget_area_count = 4; // ← 1~4の半角数字で設定してください。
    //     return $footer_widget_area_count;
    // }
    
    /*-------------------------------------------*/
    /*  <head>タグ内に自分の追加したいタグを追加する
    /*-------------------------------------------*/
    function add_wp_head_custom(){ ?>
    <!-- head内に書きたいコード -->
    <?php }
    // add_action( 'wp_head', 'add_wp_head_custom',1);
    
    function add_wp_footer_custom(){ ?>
    <!-- footerに書きたいコード -->
    /*-------------------------------------------*/
    /* ここからレベルチェック
    /*-------------------------------------------*/
    
    <?php if ( is_page('level-check') ) : ?>
    <script>
    //アンケート回答数判定
      var intScoreA = 0;
      var intScoreB = 0;
      var intScoreC = 0;
    
      function result() {
        intScoreA = 0;
        intScoreB = 0;
        intScoreC = 0;
    
        fBolRadioOn('lc1');
        fBolRadioOn('lc2');
        fBolRadioOn('lc3');
        fBolRadioOn('lc4');
        fBolRadioOn('lc5');
        fBolRadioOn('lc6');
    
        document.getElementById('level_result').style.display = "block";
        document.getElementById('result').value = "A:" + intScoreA + "個 B:" + intScoreB + "個 C:" + intScoreC + "個"
    
        document.getElementById('form-result-a').value = intScoreA
        document.getElementById('form-result-b').value = intScoreB
        document.getElementById('form-result-c').value = intScoreC
      }
    
      function fBolRadioOn(strName) {
        var radioList = document.getElementsByName(strName);
        for (var i = 0; i < radioList.length; i++) {
          if (radioList[i].checked) {
            if (i == 0) intScoreA++;
            if (i == 1) intScoreB++;
            if (i == 2) intScoreC++;
            return true;
          }
        }
    
        return false;
      }
    </script>
    <?php endif; ?>
    /*-------------------------------------------*/
    /* ここまでレベルチェック
    /*-------------------------------------------*/
    <?php }
    // add_action( 'wp_footer', 'add_wp_footer_custom', 1 );
    /**
     * 投稿タイプが ski_plan hiking-plan のときに見つからない文言を変更
     *
     * @param string $no_post_text 見つからない文言
     */
    
    function my_lightning_no_posts_text( $no_post_text ) {
    	if (
    		'ski_plan' === get_post_type() ||
    		is_array( get_query_var( 'post_type' ) ) && in_array( 'ski_plan', get_query_var( 'post_type' ) ) ||
    		false !== strpos( get_query_var( 'post_type' ), 'ski_plan' )
    	) {
    		$no_post_text = '該当するツアーは有りません。';
    	}
    	elseif (
    		'hiking-plan' === get_post_type() ||
    		is_array( get_query_var( 'post_type' ) ) && in_array( 'hiking-plan', get_query_var( 'post_type' ) ) ||
    		false !== strpos( get_query_var( 'post_type' ), 'hiking-plan' )
    	) {
    		$no_post_text = '該当するツアーは有りません';
    	}
    	return $no_post_text;
    }
    add_filter( 'lightning_no_posts_text', 'my_lightning_no_posts_text' );
    #55803

    // add_action( 'wp_footer', 'add_wp_footer_custom', 1 );

    の先頭に // がついているので、アクションフックが実行されていません。

    以下のようにしてみれば動くのではないかと思います。

    add_action( 'wp_footer', 'add_wp_footer_custom', 1 );

    #55804

    対馬様

    いつもありがとうございます。
    // には全く気がつきませんでした。
    //を取ればうまく動きました。
    感謝です!ありがとうございます。

5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • このトピックに返信するにはログインが必要です。