从自定义字段按图像 url 更改 woocommerce 图像

Change woocommerce images by image url from custom field

我正在尝试建立一个附属网站,我需要在其中导入 10.000 多种产品。我使用 WP All Import,它让我可以选择将图片下载到我的服务器。但是你可以想象所有的图片一起填满了我拥有的 space 并使我的网站和导入速度变慢。

我可以将图像 URL 另存为自定义字段,我想在我的 img 标签中使用这个 URM,但我不知道如何实现。我试过谷歌搜索,但我的问题太具体了。我没有得到构建模板的所有神秘代码。我认为这就像替换 img 标签的 src 一样简单,但我什至找不到 img 标签来做到这一点。而且我可以想象,如果很难找到 img 标签,那么用自定义字段替换 src 值就更难了。

有人可以告诉我如何实现我的目标吗?

这没有很好的记录,但您可以使用 woocommerce_placeholder_img 过滤器。当产品没有附加图像时将调用此函数。

add_filter( 'woocommerce_placeholder_img', 'replace_woocommerce_image' );

function replace_woocommerce_image( $size ) {

    //we will need access to the global post object
    //this way we know which product to replace for
    global $post;

    //check for the custom image url
    $src = get_post_meta( $post->ID, '_image_url', true );

    //if not image url is found, use the default
    if( ! $src )
        $src = wc_placeholder_img_src();

    return '<img src="' . $src . '" />';
}

您可以在手抄本中看到这一点 here。看来您还可以使用 woocommerce_placeholder_img_src 过滤器,它只会过滤源 url,而不是整个 <img> 标签。

祝你好运!