【问题标题】:In WooCommerce product options edit page display a custom field before the SKU在 WooCommerce 产品选项编辑页面中,在 SKU 之前显示自定义字段
【发布时间】:2017-04-29 17:54:01
【问题描述】:

所以我有以下功能可以在“产品库存”选项卡中添加条形码字段。但是这个字段是在所有其他内容之后添加的,我想在 SKU 代码之前添加这个字段。

function add_barcode(){
    global $woocommerce,$post;
    woocommerce_wp_text_input(
        array(
            'id'          => '_barcode',
            'label'       => __('Barcode','woocommerce'),
            'placeholder' => 'Scan Barcode',
            'desc_tip'    => 'true',
            'description' => __('Scan barcode.','woocommerce')
        ));
}
add_action('woocommerce_product_options_inventory_product_data','add_barcode');

有没有将函数/字段放在 SKU 之前,也就是实际挂钩之前,例如 woocommerce_before_product_options_inventory_product_data 方面的内容?

提前感谢您的任何建议。

【问题讨论】:

    标签: php wordpress woocommerce product inventory


    【解决方案1】:

    不能在 SKU 之前放置任何自定义字段

    您可以查看显示产品库存字段的html-product-data-inventory.php source code file

    但您可以在 SKU 字段之后显示您的“条形码”自定义字段 (例如)

    为此,您必须在 woocommerce_product_options_sku 操作挂钩中挂钩您的自定义函数。您的代码中还缺少一些用于显示保存值的内容。

    最后,您需要另一个函数来在保存或更新产品时保存该值。

    这是完整的代码:

    add_action('woocommerce_product_options_sku','add_barcode_custom_field' );
    function add_barcode_custom_field(){
        woocommerce_wp_text_input( array(
            'id'          => '_barcode',
            'label'       => __('Barcode','woocommerce'),
            'placeholder' => 'Scan Barcode',
            'desc_tip'    => 'true',
            'description' => __('Scan barcode.','woocommerce')
        ) ); 
    }
    
    add_action( 'woocommerce_process_product_meta', 'save_barcode_custom_field', 10, 1 );
    function save_barcode_custom_field( $post_id ){
        if( isset($_POST['_barcode']) )
            update_post_meta( $post_id, '_barcode', esc_attr( $_POST['_barcode'] ) );
    }
    

    此代码位于您的活动子主题(或主题)的 function.php 文件中或任何插件文件中。

    此代码经过测试,适用于 WooCommerce 版本 2.6+ 和 3.0+

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-13
      • 2016-11-04
      • 2018-02-04
      相关资源
      最近更新 更多