分类
Woocommerce

为woocommerce产品统一添加gallery图片方法

为公司用woocommerce建立的独立网站统一添加相同gallery图片,而不需要一张张每个产品上传。例如使用方法等,在wordpress主题function.php加入如下代码:

/***--------------------------------------------***/
/**product same gallery images for all **/
/***-------------------------------------------***/

add_filter('woocommerce_product_get_gallery_image_ids', 'add_universal_gallery_images', 10, 2);
function add_universal_gallery_images($gallery_ids, $product) {
    // 配置部分:按需修改以下参数
    $common_image_ids = array(6991, 6987); // 替换为你的公共图片ID
    $excluded_product_ids = array(); // 要排除的产品ID
    $excluded_category_slugs = array('custom-temporary-tattoos'); // 要排除的分类别名(slug)

    // 排除指定产品
    if (in_array($product->get_id(), $excluded_product_ids)) {
        return $gallery_ids;
    }

    // 排除指定分类
    $product_categories = wc_get_product_terms(
        $product->get_id(),
        'product_cat',
        array('fields' => 'slugs')
    );
    if (array_intersect($product_categories, $excluded_category_slugs)) {
        return $gallery_ids;
    }

    // 合并图片并去重
    $merged_ids = array_unique(array_merge($gallery_ids, $common_image_ids));
    
    return $merged_ids;
}

上面代码,需要输入统一加入图片的ID,可以排除那些产品不需要加入,或者排除那些产品类目的产品不能加入设置的统一图片

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注


RECOMMENDED