Поддержка WooCommerce Помогите получить переменную на фото

  • Есть следующая ситуация в WordPress:
    1. Подключены 1 произвольный тип записей и две таксономии (категории и теги).
    2. Произвольные посты раскиданы по этим категориям и тегам.
    3. Ко всем трем кастомным сущностям (посты, теги, категории) подключено по галереи изображений.
    4. Таким образом, страницы выбранного поста/тега/категории отображают фотографии, загруженные в соответствующую галерею.
    Нужно при помощи кода в functions.php получить переменную на ссылки двух первых фотографий из этих галерей.
    Следующий код работал для WooCommerce, когда типом страницы был продукт WooCommerce, пока WC не был удален и заменен на произвольные типы записей и таксономий:

    
        $product_id = get_queried_object_id();
        $product = new WC_product($product_id);
        $attachment_ids = $product->get_gallery_image_ids();
        $first_image = wp_get_attachment_url( $attachment_ids[0] );
        $second_image = wp_get_attachment_url( $attachment_ids[1] );
    

    Т.е., в данном коде нужно заменить WC_product на то, что сможет получить ID произвольного типа записи, далее сослаться на его кастомную галерею, и далее, я надеюсь, что wp_get_attachment_url подойдет для получения ссылки на первые два изображения из этой галереи, как в последних двух строках кода. То же самое двумя отдельными фрагментами кода нужно получить переменные на ссылки изображений для страниц таксономий.

    Благодарю за помощь

Просмотр 6 ответов — с 1 по 6 (всего 6)
  • в данном коде нужно заменить WC_product на то, что сможет получить ID произвольного типа записи

    new WC_product() возвращает не ID, а объект класса WC_product.
    ID записи любого типа внутри Цикла возвращает функция get_the_ID().

    А как из неведомой нам «галереи изображений» получать картинки, то уже Вам виднее.

    Благодарю за ответ. Можно ли использовать что-то аналогичное вместо get_queried_object_id(), например, get_post_gallery, чтобы сослаться на галерею в кастомном посте, например, по ее имени, чтобы затем получить url изображений из этой галереи?

    У Вордпресса среди базовых сущностей нет такой штуки, как галерея. Есть шорткод gallery, но как и любой другой шорткод, он не имеет своего идентификатора.

    Плагины могут создавать свои галереи как записи кастомного типа (или чего похуже). Но не зная, какой плагин используется, нельзя ответить даже чисто теоретически.

    Плагин, добавляющий кастомные посты, таксономии и галереи внутри них используется Crocoblock JetEngine

    Модератор Yui

    (@fierevere)

    ゆい

    https://crocoblock.com/help-center/
    поддержка платных продуктов оказывается продавцом или разработчиком.

    Я так понимаю, это также за рамками базового функционала плагина. Тем не менее, благодарю за наводку.

Просмотр 6 ответов — с 1 по 6 (всего 6)
  • Тема «Помогите получить переменную на фото» закрыта для новых ответов.