Woocommerce:是否可以根据另一种产品的价格自动更改一种产品的价格?

Woocommerce: Is it possible to change the price of a product automatically based on the price of another product?

我想知道是否可以在Woocommerce中'bind'不同产品a和b的价格,这样当手动更改产品a的价格时,产品b的价格会自动改变。 (这两种产品的价格应该始终相同)。我什至可以为类似的东西写一个脚本吗?如果是这样,它是否也适用于产品的变体?

额外信息:我阅读了 Dynamic Pricing 插件,但据我了解它用于不同的目的。

我猜是这样的吧?

add_action( 'updated_post_meta', 'bind_product_prices', 10, 4 );
function bind_product_prices( $meta_id, $post_id, $meta_key, $meta_value ) {
    $product_a_id = 21;
    $product_b_id = 33;
    
    if ( $post_id !== $product_a_id && $post_id !== $product_b_id ) {
        return;
    }
    
    if ( $meta_key !== '_regular_price' ) {
        return;
    }
    
    $new_price = floatval( $meta_value );
    
    if ( $post_id == $product_a_id ) {
        $product_b = wc_get_product( $product_b_id );
        $product_b_price = (float) $product_b->get_regular_price();
                
        if ( $product_b_price === $new_price ) {
            return;
        }
        
        $product_b->set_regular_price( $new_price );
        $product_b->save();
    }
    
    if ( $post_id == $product_b_id ) {
        $product_a = wc_get_product( $product_a_id );
        $product_a_price = (float) $product_a->get_regular_price();
        
        if ( $product_a_price === $new_price ) {
            return;
        }
        
        $product_a->set_regular_price( $new_price );
        $product_a->save();
    }
}