如何自动删除 WooCommerce 中的产品图片以及产品

尽管 WooCommerce 是一个非常强大的购物平台,近年来发展了很多,但仍然有很多缺失的选择。 其中之一是可以在删除产品时自动删除 WooCommerce 中的产品图像。

更准确地说,当我们从 WooCommerce 中删除产品时,与其关联的图像仍保留在服务器上。 拥有数千种产品的在线商店将收集大量图像。 如果这些图片不与产品一起删除,那么随着时间的推移,它们将占用大量存储空间。

当在 WooCommerce 添加新产品,至少演示图像将至少复制三到四次,大小不同。 有一些 themes Woo 可以为不同的布局制作多达 10 个原始图像的副本。

优化产品图片在虚拟主机服务器上占用空间的最佳解决方案是将它们与从在线商店中删除的产品一起删除。

如何在删除产品时自动删除 WooCommerce 中的产品图片

我有一家有亚麻的网上商店 media library 23.567 张图片, 大多数 WooCommerce 产品。 如果我要删除不再有库存的产品,图像将保留在媒体库(在服务器上)中。

媒体库中的产品图片
媒体库中的产品图片

要自动删除 WooCommerce 中的产品图片以及产品,您只需将以下代码添加到活动主题的 functions.php 文件中:

*强烈建议先备份文件夹 wp-content/uploads.

// Automatically Delete Woocommerce Images After Deleting a Product
add_action( 'before_delete_post', 'delete_product_images', 10, 1 );

function delete_product_images( $post_id )
{
    $product = wc_get_product( $post_id );

    if ( !$product ) {
        return;
    }

    $featured_image_id = $product->get_image_id();
    $image_galleries_id = $product->get_gallery_image_ids();

    if( !empty( $featured_image_id ) ) {
        wp_delete_post( $featured_image_id );
    }

    if( !empty( $image_galleries_id ) ) {
        foreach( $image_galleries_id as $single_image_id ) {
            wp_delete_post( $single_image_id );
        }
    }
}

很高兴知道将上面的代码保存在 functions.php, 产品图片将被自动删除, 连同产品。 当产品也从“Trash“。

如何自动删除 WooCommerce 中的产品图片以及产品
删除 WooCommerce 产品图片

连同从网上商店下架的产品 3336张图片也被删除 联系。 一个相当重要的数字,它会在网络托管服务器上占用不必要的空间。

如果您对多个产品使用相同的图像,请不要使用此选项。 如果删除存在它们的产品,它们将被自动删除。

如何以 » WordPress » 如何自动删除 WooCommerce 中的产品图片以及产品

对技术充满热情,我喜欢测试和编写有关操作系统的教程 macOS, Linux, Windows, 关于 WordPress, WooCommerce 和配置 LEMP 网络服务器 (Linux、NGINX、MySQL 和 PHP)。 我写在 StealthSettings.com 自 2006 年以来,几年后我开始撰写 iHowTo.Tips 教程和有关生态系统中设备的新闻 Apple: iPhone,iPad, Apple 手表,HomePod, iMac, MacBook、AirPods 和配件。

发表评论