当前位置: 首页 > 知识库问答 >
问题:

如何呼应定制WooCommerce产品变化领域?

洪经义
2023-03-14

我为每个woocommerce产品变体添加了一个自定义字段。

我添加了一个日期时间输入字段。然后,当datetime值已经过去时,我需要自动删除变量。因此,自动终止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 ) );
    }
}

如何获取每个变体的输入字段值并进行回显,以便将该值用于另一个函数并自动删除变体?

共有1个答案

经炜
2023-03-14

您可以通过使用get_post_meta()函数获得自定义的WooCommerce产品变化字段

echo  get_post_meta( $post->ID, '_text_field_date_expire', true );
 类似资料:
  • 我想在Wp/WooCommerce /shop/页面上显示所有产品及其变体。(我下面描述的过程是我试图让它工作的过程。欢迎其他选择。 标准是什么:产品A和产品B在网站上展示。产品A有“广告到购物车”按钮。产品B有“选择选项”按钮。 我想要的是:产品A是一种“简单”的产品,在商店页面上显示产品B是一种“可变”产品,有两种组合(黑色/蓝色)。添加到购物车按钮将此变体添加到购物车 我想在商店页面上展示3

  • 我已经为Woocommerce开发了定制的单一产品模板,这些模板可以正常工作并符合预期。问题是,现在客户想要销售的产品有一些不同的变体,而我不知道如何添加此功能。 目前在产品页面上,我使用了the_post_thumbail()和get_post_meta()等函数来显示产品的各种信息,如价格和在产品帖子类型中输入的摘录。然后我使用do_action(woocommerce_simple_add_

  • 我试图在变体下拉列表中显示产品变体价格。我试图改变默认的行为,当你在下拉列表中选择一个变量时,价格显示在div中。 问题是我找不到那个部门的变动价格。我搜索了所有的javascript,但找不到它 如果我使用: 我只得到所有选项的最小变化价格。我想知道每种变体的价格。有线索吗?

  • 我试图以编程方式为一个可变产品添加两个产品变体。基于此回答线程,我使用以下缩短的函数: 我使用以下数据数组: 然后我运行以下函数: 其中,是我要对其进行更改的变量产品的id,是上面定义的数据数组。 我的问题是函数只插入foreach in函数中的最后一个数据。 i、 e.在商业中的产品变化有: 红色W1 红色W1 但我想: 蓝色W1 红色W1

  • WooCommerce可变产品的变种是什么?一件颜色是红色尺码为XL的衣服就是一个变种。可变产品最多能有多少变种?没有限制,但的确存在一个数量,会影响变种下拉列表的行为。这个数量是30个。 变种下拉列表的两种行为 行为1:动态展示商品属性。 这是我们平时看到的模式,从程序角度讲,就是把variations的所有可能直接以json格式放到add to cart表单上,用js读取并动态渲染。 用人话讲

  • 我正在尝试为函数编写一个代码段。php文件,该文件仅显示所选变体的一个价格,因此忽略了在单个产品页面上随变体价格一起显示的价格范围。我正在使用以下代码: 问题是,例如,当您有两个单一产品的变体,而其中一个缺货时,此脚本会在单一产品页面上隐藏剩余变体的价格。我在想,也许每个产品都有一些可用的变体,并使用IF来使用标准的单一产品模板来显示它们。或者你有更好的办法解决这个问题?