如何回应自定义 woocommerce 产品变体领域?
How to echo custom woocommerce product variation field?
我为每个 woocommerce 产品变体添加了一个自定义字段。
我添加了日期时间输入字段。然后我需要在日期时间值已经过去时自动删除变体。所以自动使 woocommerce 产品变体过期。
这是我添加自定义输入字段的代码。
// Add Variation Settings
add_action( 'woocommerce_product_after_variable_attributes', 'variation_settings_fields', 10, 3 );
// Save Variation Settings
add_action( 'woocommerce_save_product_variation', 'save_variation_settings_fields', 10, 2 );
//Create New fields for Variations
function variation_settings_fields( $loop, $variation_data, $variation ) {
// Text Field
woocommerce_wp_text_input(
array(
'id' => '_text_field_date_expire[' . $variation->ID . ']',
'class' => '_text_field_date_expire',
'type' => 'datetime-local',
'label' => __( 'Date of Expiration', 'woocommerce' ),
'placeholder' => '',
'desc_tip' => 'true',
'description' => __( 'Expiration of Each Product Variation', 'woocommerce' ),
'value' => get_post_meta( $variation->ID, '_text_field_date_expire', true )
)
);
}
//Save New Fields for Variation
function save_variation_settings_fields( $post_id ) {
// Text Field
$text_field = $_POST['_text_field_date_expire'][ $post_id ];
if( ! empty( $text_field ) ) {
update_post_meta( $post_id, '_text_field_date_expire', esc_attr( $text_field ) );
}
}
如何获取每个变体的输入字段值并回显它,以便我可以将该值用于另一个函数并自动删除变体?
您可以使用 get_post_meta() 函数获得自定义 woocommerce 产品变体字段
echo get_post_meta( $post->ID, '_text_field_date_expire', true );
我为每个 woocommerce 产品变体添加了一个自定义字段。
我添加了日期时间输入字段。然后我需要在日期时间值已经过去时自动删除变体。所以自动使 woocommerce 产品变体过期。
这是我添加自定义输入字段的代码。
// Add Variation Settings
add_action( 'woocommerce_product_after_variable_attributes', 'variation_settings_fields', 10, 3 );
// Save Variation Settings
add_action( 'woocommerce_save_product_variation', 'save_variation_settings_fields', 10, 2 );
//Create New fields for Variations
function variation_settings_fields( $loop, $variation_data, $variation ) {
// Text Field
woocommerce_wp_text_input(
array(
'id' => '_text_field_date_expire[' . $variation->ID . ']',
'class' => '_text_field_date_expire',
'type' => 'datetime-local',
'label' => __( 'Date of Expiration', 'woocommerce' ),
'placeholder' => '',
'desc_tip' => 'true',
'description' => __( 'Expiration of Each Product Variation', 'woocommerce' ),
'value' => get_post_meta( $variation->ID, '_text_field_date_expire', true )
)
);
}
//Save New Fields for Variation
function save_variation_settings_fields( $post_id ) {
// Text Field
$text_field = $_POST['_text_field_date_expire'][ $post_id ];
if( ! empty( $text_field ) ) {
update_post_meta( $post_id, '_text_field_date_expire', esc_attr( $text_field ) );
}
}
如何获取每个变体的输入字段值并回显它,以便我可以将该值用于另一个函数并自动删除变体?
您可以使用 get_post_meta() 函数获得自定义 woocommerce 产品变体字段
echo get_post_meta( $post->ID, '_text_field_date_expire', true );