繁体   English   中英

图像更改时的电子邮件,woocommerce 产品

[英]email when images change, woocommerce product

我试图在 woocommerce 产品以任何方式更改其图像时发送电子邮件。

我开始尝试获取图片库的 $_POST,但我认为我称它为错误的东西……我尝试了以下方法: $images = $_POST['image_ids']; $images = $_POST['gallery_image_ids'];

然后我将该值与当前图像 ID 进行比较: $oldImages = $product->get_gallery_image_ids();

如果它们不匹配,我将使用 wp_mail 向不同的人发送电子邮件。

我正在使用以下自定义 php 函数执行所有这些操作: add_action('pre_post_update', 'content_change_email', 10, 2); 函数 content_change_email($post_ID, $data) {

}

我认为问题源于 $images = $_POST['image_ids']; $images = $_POST['gallery_image_ids']; 代码的一部分。

有人可以让我知道画廊图像的正确元字段名称是什么吗?

我解决了我自己的问题……我使用自定义元字段来记录所有图像的 ID,包括特色图像,然后将其与当前图库图像进行比较以查看它们是否已更改,如果已更改,则更新自定义元值新号码并发送电子邮件让人们知道图片已更改。

代码如下:

// send email when images change for a product
add_action( 'woocommerce_update_product', 'imagecheck_on_product_save', 10, 1 );
function imagecheck_on_product_save( $product_id ) {
    $product = wc_get_product( $product_id );
    // do something with this product
    $metaImages = get_post_meta( $product_id, '_gallery_image_ids', true );
    $currentImages = $product->get_gallery_image_ids();

$imageIDs = get_post_thumbnail_id( $product_id );
if ($imagesIDs != "" )
{
    
$imageIDs = $imageIDs . ", ";
foreach($currentImages as $value){
    $imageIDs = $imageIDs . $value . ", "; 
}

if ( $metaImages != $imageIDs ) {
    update_post_meta( $product_id, '_gallery_image_ids', esc_attr( $imageIDs ) );
    
    global $current_user;
            wp_get_current_user();
    $email = $current_user->user_email;
    $lastuser = $current_user->user_firstname;
    
    if ( $product->get_sku() != "" ) 
    {
        $memail = "<pre>USER: " . $lastuser . " made the following changes:</br>
Meta gallery images: " . $metaImages . "</br>
</br>
Actual gallery images: " . $imageIDs . "
" . $memail . "</pre>";
        $headers = array('Content-Type: text/html; charset=UTF-8');
        $subject = "PICTURES CHANGED - SKU: " . $product->get_sku();
        $to = "(insert who you want to send to here)";
        wp_mail( $to, $subject, $memail, $headers ); 
    }
}
}
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM