wordpress - Woocommerce 删除产品时,也会自动删除产品图库和产品图片

标签 wordpress woocommerce

我正在尝试以下操作:

当产品页面被删除(永久)时,它还应该删除: 帖子中附加的产品图库和产品图片。

我尝试了我找到的解决方案: https://wordpress.stackexchange.com/questions/109793/delete-associated-media-upon-page-deletion

但这对我来说没有成功。

最佳答案

虽然这是一个老问题,但我将把它留在这里,以防将来有人寻找它。

由于您想删除产品图片,您可以尝试这些简洁方便的 woocommerce 功能来获取附件 ID。

类似这样的事情:

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 );
        }
    }
}

对我来说效果很好。

关于wordpress - Woocommerce 删除产品时,也会自动删除产品图库和产品图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24676547/

相关文章:

mysql - 将 Wordpress post_meta 表变成更易于使用的 View

html - 在 wordpress 中阅读更多链接

php - Woocommerce 获取产品

wordpress - 自定义 WooCommerce 数量选择器

javascript - 更新现有类别中的类别时,不应显示在下拉框中

php - 在 woocommerce 中添加内容和自定义页面标题的位置

php - 为 WooCommerce 中的特定订单状态启用 "cancel"订单操作按钮

php - 将 Woocommerce 购物车项目自定义数据保存为订单项目元数据,将其显示在订单和电子邮件上

javascript - Google map 中奇怪的缩放按钮样式。有人有什么想法吗?

php - 将 Woocommerce 排序下拉列表显示为列表