既存のHTMLサイトをWordPress用に書き換えているのですが、JSだけがうまく機能しません。その他はHTMLサイトと同ように機能するのですが。
具体的な内容に関しては
現在画像10数枚がサイトに表示されていてそれをクリックすると、ポップアップ画像として表示、さらに「prev」「next」ボタンで前後の画像表示。(例:4.jpgをクリック→4.jpgがポップアップ表示→prevボタンクリック→3.jpgがポップアップ表示)というものなのですが、
WordPress用の方では、画像10数枚がサイトに表示されていてそれをクリックすると、ポップアップ画像として表示されるところまでは同じなのですが、そこから「prev」「next」ボタンどちらを押しても、勝手に1.jpgに飛ばされます。(例:4.jpgをクリック→4.jpgがポップアップ表示→prev or nextボタンクリック→1.jpgがポップアップ表示→nextボタンクリック→2.jpgがポップアップ表示)となります。
popup自体を機能させるためのJS,ハンバーガーメニューを機能させるためのJSは動作するので、読み込みには問題はなく、JSの書き方、もしくはindex.phpの書き方に問題があるのではと思います。
js
1$(function() { 2 let imageSources = ["./images/image/1.jpg","./images/image/2.jpg","./images/image/3.jpg","./images/image/4.jpg","./images/image/5.jpg","./images/image/6.jpg","./images/image/7.jpg","./images/image/8.jpg","./images/image/9.jpg","./images/image/10.jpg","./images/image/11.jpg","./images/image/12.jpg","./images/image/13.jpg","./images/image/14.jpg","./images/image/15.jpg","./images/image/16.jpg","./images/image/17.jpg"]; 3 4 $('#container-p img').each(function() { 5 let path = $(this).attr("src"); 6 imageSources.push(path); 7 }); 8 let sourceIndex = 0; 9 10 $("#containers-p img").on("click", function () { 11 let img_src = $(this).attr("src"); 12 sourceIndex = imageSources.indexOf(img_src); 13 14 $("#popup-img img").attr("src", img_src); 15 $("#popup-img").toggleClass('active'); 16 }); 17 18 $("#popup-close-btn").on("click", function () { 19 $("#popup-img").removeClass('active'); 20 }); 21 22 $('#popup-prev-btn').on("click", function() { 23 sourceIndex = (sourceIndex + imageSources.length - 1) % imageSources.length; 24 updatePopupImage(); 25 }); 26 27 $('#popup-next-btn').on("click", function() { 28 sourceIndex = (sourceIndex + 1) % imageSources.length; 29 updatePopupImage(); 30 }); 31 32 function updatePopupImage() { 33 $("#popup-img img").attr("src", imageSources[sourceIndex]); 34 } 35}); 36
PHP
1 <div id="popup-img" class="default"> 2 <img src="<?php echo get_template_directory_uri(); ?>/images/image/1.jpg" alt="ポップアップ"> 3 <div id="popup-close-btn" class="popup-close-btn"><i class="fa-solid fa-xmark"></i></div> 4 <div class="popup-change-btn"> 5 <div id="popup-prev-btn" class="change-btn"><i class="fa-solid fa-chevron-left"></i></i></div> 6 <div id="popup-next-btn" class="change-btn"><i class="fa-solid fa-chevron-right"></i></div> 7 </div> 8 </div> 9 <ul id="containers-p" class="containers-p"> 10 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/1.jpg" alt=""></li> 11 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/2.jpg" alt=""></li> 12 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/3.jpg" alt=""></li> 13 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/4.jpg" alt=""></li> 14 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/5.jpg" alt=""></li> 15 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/6.jpg" alt=""></li> 16 <li class="container-p flex-pc"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/7.jpg" alt=""></li> 17 <li class="container-p flex-pc"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/8.jpg" alt=""></li> 18 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/9.jpg" alt=""></li> 19 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/10.jpg" alt=""></li> 20 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/11.jpg" alt=""></li> 21 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/12.jpg" alt=""></li> 22 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/13.jpg" alt=""></li> 23 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/14.jpg" alt=""></li> 24 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/15.jpg" alt=""></li> 25 <li class="container-p"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/16.jpg" alt=""></li> 26 <li class="container-p flex"><img class="pop_trigger" src="<?php echo get_template_directory_uri(); ?>/images/image/17.jpg" alt=""></li> 27 </ul>