如何在WooCommerce设置的“产品库存”标签中添加自定义字段?

问题描述

我正在寻找一种向WooCommerce-设置-产品-库存添加新字段的方法

查看所附图片

inventory


经过研究,我相信我应该使用woocommerce_inventory_settings过滤器挂钩,但是我不立即知道如何在实践中应用它?

解决方法

woocommerce_inventory_settings钩子可以在class-wc-settings-products.php81行中找到(在WooCommerce 4.4.1中)

因此您可以使用

// Add custom field: WooCommerce > Settings > Products > Iventory
function filter_woocommerce_inventory_settings( $settings ) {
    $settings[] = array(
        'title' => __( 'My title','woocommerce' ),'type'  => 'title','desc'  => '','id'    => 'product_inventory_custom_options',);
    
    $settings[] = array(
        'title'       => __( 'My message','id'          => 'woocommerce_my_message','type'        => 'text','default'     => '','class'       => '','css'         => '','placeholder' => __( 'Enter my message','desc_tip'    => __( 'This is the message that appears when..',);
    
    $settings[] = array(
        'type' => 'sectionend','id'   => 'product_inventory_custom_options',);

    return $settings;
}
add_filter( 'woocommerce_inventory_settings','filter_woocommerce_inventory_settings',10,1 );

要在代码中或网站上的其他位置获取值,请使用get_option( string $option,mixed $default = false )-根据选项名称检索选项值。

// Get message from field
$get_option = get_option( 'woocommerce_my_message' );