web-dev-qa-db-ja.com

ループでウーコマースの商品の最初の画像ギャラリーを取得する方法

商品画像のある商品を表示したいのですが、訪問者がその画像の上にカーソルを置くと、商品ギャラリーの最初の画像に変わります。このコードを使用して画像ギャラリーを表示していますが、商品ギャラリーのすべての画像が表示されます。私はただ1枚の画像が欲しいのです。

  <?php do_action( 'woocommerce_product_thumbnails' ); ?>

誰もがこの問題を解決する方法を知っていますか?アイデアを本当に感謝します。

よろしく

4
Mailmulah

製品のサムネイル(私はあなたがこれを持っていると思います)と共に、あなたが必要とするものは製品画像のリスト(配列)です - WooCommerceにはそのようなメソッドがあります、例えば$product->get_gallery_attachment_ids()

配列の最初のIDを取得して、 wp_get_attachment_image() 、または wp_get_attachment_url() などを使用して単一の画像を取得し、それをメイン(サムネイル)画像の代替ソースとして使用できます。

ちなみに、woocommerce_product_thumbnails呼び出しは、おそらく使用したくないマークアップを出力しています。あなたが望む出力を得るためには、これを捨てるか、またはそこから関数を外す必要があります。

2
Isaac Lubow

2018年アップデート: 代わりにget_gallery_image_ids();を使う必要がある。次に、返された配列の最初のIDを付けてwp_get_attachment_url()を使用します。

$product->get_gallery_image_ids();
0
Samyer