要在代码中使用过滤器,在保存产品时覆盖产品属性。以下是一种实现此目标的示例代码:
add_action('woocommerce_save_product_variation', 'overwrite_attribute_on_save');
function overwrite_attribute_on_save($variation_id) { $product_id = wp_get_post_parent_id( $variation_id ); $product = wc_get_product( $product_id );
// Get the attribute to overwrite $attribute_name = 'pa_color'; $attribute_value = 'red';
// Overwrite the attribute value $product->set_attribute( $attribute_name, $attribute_value ); $product->save(); }
此代码使用 woocommerce_save_product_variation 动作,在编辑产品变体时覆盖产品属性。在此示例中,我们要覆盖名为“pa_color”的产品属性的值为“red”。该示例中的 set_attribute 方法将新值设置到产品对象中,并使用 save 方法进行保存。