phpとjsでidを取得して画像を表示する処理を作っています。
現状を説明します。
ECサイトを制作しており、1つの商品に対して複数枚のサンプル画像を表示しています。
その画像をクリックすると別のエリアに表示される仕様です。
この処理をやめ、複数枚でく1つの商品に対し1つの画像のみ表示することになりました。
その際に画像をクリックしてもらう必要がなくなったので、デフォルトでその商品に対応する画像を表示させたいです。
下は該当部分のコードですが、gallery_img部分の画像を表示させたいです
どうすれば画像のidを取得し表示すればよいかわからず悩んでいます
php
1<?php 2$galleryImages = get_product_gallery_list(get_the_ID()); 3?> 4<div class="gallery_img"> 5 <?php 6 foreach ($galleryImages as $image) { 7 print('<img id="' . $image[1] . '" onclick="Zero(event);" src="' . $image[2] . '" style="margin: 5px;" width="120px" height="120px" />'); 8 } 9 ?> 10</div> 11<div><img id="try_on_image" src="" style="-webkit-transform: translateZ(0);"></div> 12<script> 13var elem = document.getElementById("on_image"); 14elem.src = ""; 15var Zero = function(event) { 16 document.getElementById("on_image").style.display = "block"; 17 var target = event.target.id; 18 var targetId = document.getElementById(target); 19 elem = document.getElementById("on_image"); 20 elem.src = targetId.src; 21</script>
php
1function get_product_gallery_list($postId) 2{ 3 global $wpdb; 4 $results = $wpdb->get_results(" 5 SELECT 6 * 7 FROM 8 WP_PRODUCT_GALLERY 9 WHERE 10 POST_ID = " . $postId . " 11 ORDER BY 12 WP_PRODUCT_GALLERY.IMAGE_ID ASC 13 ", ARRAY_N); 14 15 return $results; 16}
回答1件
あなたの回答
tips
プレビュー