如何强制WooCommerce邮件使用更高分辨率的产品图片
解决WooCommerce邮件产品图片模糊问题
你遇到的问题是因为WooCommerce邮件钩子中,直接传入array(400,400)作为图片尺寸时,系统会优先匹配已注册的最接近小尺寸(这里默认匹配了150x150的缩略图),而非直接调用你已有的400x400原图。可以通过以下方式强制使用指定尺寸的清晰图片:
步骤1:确保400x400图片尺寸已注册
如果你的WordPress/WooCommerce中还没注册400x400的产品图片尺寸,先在functions.php中添加注册代码:
// 注册用于邮件的400x400产品图片尺寸 add_action( 'after_setup_theme', 'w3p_register_custom_email_image_size' ); function w3p_register_custom_email_image_size() { // 第三个参数true表示按比例裁剪图片,false则是缩放 add_image_size( 'wc_email_product_400x400', 400, 400, true ); }
步骤2:修改邮件图片调用代码
将你原有的代码修改为使用注册好的尺寸名称,而非尺寸数组:
function w3p_add_image_to_wc_emails( $args ) { $args['show_image'] = true; // 使用注册的尺寸名称,而非数组 $args['image_size'] = 'wc_email_product_400x400'; return $args; } add_filter( 'woocommerce_email_order_items_args', 'w3p_add_image_to_wc_emails' );
补充说明
- 如果你之前已经通过WooCommerce设置或其他代码注册过400x400的尺寸(比如
shop_single或自定义名称),直接替换image_size的值为对应名称即可。 - 若之前上传的产品图片没有生成该尺寸的版本,需要使用Regenerate Thumbnails插件重新生成所有图片的对应尺寸,确保系统能找到清晰的400x400原图。
内容的提问来源于stack exchange,提问作者Nick MacKay
相关产品推荐
相关产品推荐

