在WooCommerce中将图像生成限制为仅一种图像大小

2022-07-04 00:00:00 image product php wordpress woocommerce

WooCommerce上传媒体创建了7个额外的图像大小。我使用店面主题。

当我上传图像时,我希望WooCommerce只创建一种图像大小,用于目录图像、单一产品图像和产品缩略图。

有没有办法做到这一点?


解决方案

这太复杂了,不是必需的,例如:

  • WordPress媒体库使用WordPress缩略图大小
  • WordPress博客和页面使用其他一些WordPress大小,
  • WooCommerce需要3个自己的镜像大小,仅使用一个将迫使您覆盖许多不同的WooCommerce模板(并且会在某些核心功能中造成问题)。
还请记住,对于不同的屏幕设备,也使用不同的图像大小。这可以缩短中小型设备的加载时间。

现在您可以使用下面的代码remove images sizes如果您要尝试和测试(您应该注释要保留的图像大小):

add_action('init', 'remove_plugin_image_sizes');
function remove_plugin_image_sizes() {
    # remove_image_size('thumbnail'); // Wordpress (used by the media librairy to display thumbs)
    remove_image_size('medium'); // Wordpress
    remove_image_size('medium_large'); // Wordpress
    remove_image_size('large'); // Wordpress
    remove_image_size('shop_thumbnail'); // Woocommerce
    remove_image_size('shop_catalog'); // Woocommerce
    remove_image_size('shop_single'); // Woocommerce
}

代码位于活动子主题(或主题)的函数.php文件或任何插件文件中。

我不能为WooCommerce做任何保证,因为这是未经测试的,而且模板和函数中使用了不同的图像大小,因此您可能会遇到真正的问题。

您将始终拥有完整大小的图像(原始上载)。

激活:
您需要将活动主题切换到另一个主题,然后再切换回来将其激活。


如果是重量问题,您可以在:

中为未使用的尺寸设置小尺寸
  • WordPress常规设置>媒体库
  • WooCommerce设置>产品>显示

您应该需要使用Regenerate Thumbnails插件

重新生成所有现有图像

您还可以使用Smush Image Compression and Optimization插件等自动压缩图像工具


相关答案:Disable original image crop in WooCommerce

相关文章