Add custom field to product settings shipping tab and display value on additional information tab in WooCommerce(将自定义字段添加到产品设置发货选项卡,并在WooCommerce的其他信息选项卡上显示值)
本文介绍了将自定义字段添加到产品设置发货选项卡,并在WooCommerce的其他信息选项卡上显示值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图添加一个&Quantity Per Package&Quantity&Quantity Per Package&Quot;字段到WooCommerce产品,我需要在产品后端的Shipping选项卡中使用这个字段。然后,我需要在"附加信息"选项卡中的"包装尺寸"下显示此数字。
我可以在"其他信息"选项卡中添加一行,但我不知道如何输入值并使其显示该值。
目前我正在使用以下内容,有人可以在路上帮助我吗?
add_filter( 'woocommerce_display_product_attributes', 'custom_product_additional_information', 10, 2 );
function custom_product_additional_information( $product_attributes, $product ) {
$product_attributes[ 'attribute_' . 'custom-one' ] = array(
'label' => __('Quantity per Package'),
'value' => __('Value 1'),
);
return $product_attributes;
}
推荐答案
代码包含:
- 将自定义字段添加到产品发货选项卡
- 保存自定义字段
- 如果不为空,则在其他信息选项卡上显示值
- 通过代码中添加的注释标签进行解释
// Add custom field to product shipping tab
function action_woocommerce_product_options_shipping(){
$args = array(
'label' => __( 'My label', 'woocommerce' ),
'placeholder' => __( 'My placeholder', 'woocommerce' ),
'id' => '_quantity_per_package',
'desc_tip' => true,
'description' => __( 'My description', 'woocommerce' ),
);
woocommerce_wp_text_input( $args );
}
add_action( 'woocommerce_product_options_shipping', 'action_woocommerce_product_options_shipping', 10, 0 );
// Save
function action_woocommerce_admin_process_product_object( $product ) {
// Isset
if( isset($_POST['_quantity_per_package']) ) {
$product->update_meta_data( '_quantity_per_package', sanitize_text_field( $_POST['_quantity_per_package'] ) );
}
}
add_action( 'woocommerce_admin_process_product_object', 'action_woocommerce_admin_process_product_object', 10, 1 );
// Display value on additional Informations tab if NOT empty
function filter_woocommerce_display_product_attributes( $product_attributes, $product ) {
// Get meta
$quantity_per_package = $product->get_meta( '_quantity_per_package' );
// NOT empty
if ( ! empty ( $quantity_per_package ) ) {
$product_attributes[ 'quantity_per_package' ] = array(
'label' => __('Quantity per Package', 'woocommerce '),
'value' => $quantity_per_package,
);
}
return $product_attributes;
}
add_filter( 'woocommerce_display_product_attributes', 'filter_woocommerce_display_product_attributes', 10, 2 );
这篇关于将自定义字段添加到产品设置发货选项卡,并在WooCommerce的其他信息选项卡上显示值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:将自定义字段添加到产品设置发货选项卡,并在WooCommerce的其他信息选项卡上显示值


猜你喜欢
- 使用 GD 和 libjpeg 支持编译 PHP 2022-01-01
- Laravel 5:Model.php 中的 MassAssignmentException 2021-01-01
- openssl_digest vs hash vs hash_hmac?盐与盐的区别HMAC? 2022-01-01
- 如何使用 Google API 在团队云端硬盘中创建文件夹? 2022-01-01
- 如何从数据库中获取数据以在 laravel 中查看页面? 2022-01-01
- 如何在 Symfony2 中正确使用 webSockets 2021-01-01
- Oracle 即时客户端 DYLD_LIBRARY_PATH 错误 2022-01-01
- PHP foreach() 与数组中的数组? 2022-01-01
- PHP - if 语句中的倒序 2021-01-01
- 覆盖 Magento 社区模块控制器的问题 2022-01-01