gpt4 book ai didi

php - 如何获取 Woocommerce 变体 ID?

转载 作者:可可西里 更新时间:2023-11-01 08:02:48 24 4
gpt4 key购买 nike

我已经在 functions.php 上有了这段代码

此代码用于在每个产品变体上添加一个新字段以具有日期时间输入字段,因此当当前日期超过输入日期时变体将自动过期。

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

这是为了在 Wocommerce 的每个变体上添加一个新字段。

我想做的是获取每个“_text_field_date_expire”元数据,这样我就可以删除每个产品的过期变体。

我如何在 functions.php 上获取每个 woocommerce 变体 ID,以便我可以添加一个规则,当它现在已经超过当前日期时将过期?

var_dump(get_post_meta( $variation_id , '_text_field_date_expire', true ));

这段代码是我将用来获取日期时间字段的代码,但不确定如何获取每个 $variation_id 字段?

最佳答案

试试这个:

$args = array(
'post_type' => 'product_variation',
'post_status' => array( 'private', 'publish' ),
'numberposts' => -1,
'orderby' => 'menu_order',
'order' => 'asc',
'post_parent' => get_the_ID() // get parent post-ID
);
$variations = get_posts( $args );

foreach ( $variations as $variation ) {

// get variation ID
$variation_ID = $variation->ID;

// get variations meta
$product_variation = new WC_Product_Variation( $variation_ID );

// get variation featured image
$variation_image = $product_variation->get_image();

// get variation price
$variation_price = $product_variation->get_price_html();

get_post_meta( $variation_ID , '_text_field_date_expire', true );

}

希望对您有所帮助。更多信息:

关于php - 如何获取 Woocommerce 变体 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47646939/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com