Я разрабатываю шаблон с нуля в WordPress, у меня проблема с получением изображений продуктов / галереи на single.php по идентификатору продукта; вот мой код:
function GetImageUrlsByProductId( $productId){
$product = new WC_product($productId);
$attachmentIds = $product->get_gallery_image_ids();
$imgUrls = array();
foreach( $attachmentIds as $attachmentId )
{
$imgUrls[] = wp_get_attachment_url( $attachmentId );
}
return $imgUrls;
}
$id = the_ID();
echo $id."<br/>";
$title = get_the_title();
echo $title."<br/>";
print_r(GetImageUrlsByProductId($id));
Он показал пустой массив, но мне нужен путь к изображениям.
Я не ищу идентификатор продукта, мне нужна галерея продуктов на моем single.php самым простым способом, независимо от того, получает ли он идентификатор продукта или какую-либо функцию для вызова
@RoxasZohbi, вы используете функцию the_ID (), но эта функция используется только для отображения идентификатора сообщения, что означает, что в соответствии с вашим сценарием вы должны использовать этот get_the_ID () для получения идентификатора сообщения, а затем его можно сохранить в переменной $ id. можете проверить мой ответ ниже
Для получения дополнительной информации вы можете проверить эту ссылку developer.wordpress.org/reference/functions/the_id и этот developer.wordpress.org/reference/functions/get_the_id
Над обеими ссылками вы можете определить разницу в отображении и получить данные.






Я думаю, что этот код может решить проблему.
<?php
$product_id = get_the_ID();
$product = new WC_product($product_id);
$attachment_ids = $product->get_gallery_attachment_ids();
foreach( $attachment_ids as $attachment_id )
{
// Display the image URL
echo $Original_image_url = wp_get_attachment_url( $attachment_id );
// Display Image instead of URL
echo wp_get_attachment_image($attachment_id, 'full');
}
?>
Спасибо за помощь
Если вы ищете идентификатор продукта woocommerce, я не верю, что вам нужен the_ID (); stackoverflow.com/questions/27385920/…