将条形码字段添加到WooCommerce中的产品库存
我想在我的产品库存设置的SKU代码字段下添加条形码字段。我想使用此工具,因为我正在使用WooCommerce POS,并基于条形码字段进行扫描,但仍然使用SKU字段来显示真实的SKU代码。将条形码字段添加到WooCommerce中的产品库存
如何在不使用任何插件的情况下完成此操作。 (阅读:Function.php代码)。
我已经尝试使用下面的代码,但没有成功:
//Add barcode to the product inventory tab
add_action('woocommerce_product_options_inventory_product_data','add_barcode');
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')
));
}
//Save Barcode Field
function add_barcode_save($post_id){
if(isset($_POST['_barcode'])){
update_post_meta($post_id,'_barcode',sanitize_text_field($_POST['_barcode']));
}else{
delete_meta_data($post_id,'_barcode',sanitize_text_field($_POST['_barcode']));
}
}
add_action('woocommerce_process_product_meta','add_barcode_save');
//Set POS Custom Code
function pos_barcode_field(){return '_barcode';}
add_filter('woocommerce_pos_barcode_meta_key','pos_barcode_field');
由于代码只是似乎没有任何效果可言的时候加入的functions.php。如果改变了任何东西,我正在使用富有成效的主题。
有没有人知道我在做什么错在这里?预先感谢您能为我提供的帮助!
正如我上面提到的,你的代码应该是一个插件。这是您的代码更新为WooCommerce 3.0。但它不兼容。
function add_barcode(){
woocommerce_wp_text_input(
array(
'id' => '_barcode',
'label' => __('Barcode', 'your-plugin'),
'placeholder' => 'Scan Barcode',
'desc_tip' => 'true',
'description' => __("Scan the product's barcode.", "your-plugin")
)
);
}
add_action('woocommerce_product_options_inventory_product_data','add_barcode');
function add_barcode_save($product){
if(isset($_POST['_barcode'])) {
$product->update_meta_data('_barcode', sanitize_text_field($_POST['_barcode']));
} else {
$product->delete_meta_data('_barcode');
}
}
add_action('woocommerce_admin_process_product_object', 'add_barcode_save');
然后你需要的地方检索元数据,你可以这样做是这样的:
$product = wc_get_product($product_id);
$product->get_meta('_variable_billing');
我仍在使用WooCommerce 2.6,因为我害怕要更新以诚实地对待用户使用3.0版本时遇到的所有问题。 但是非常感谢你为那些确实升级到3.0的人提供的答案! –
你将不得不升级。 :) WooCommerce 3.0.5应该很快就会发布,所以所有的发布版本都在修复bug并使其更好。但它仍然是一个主要版本,并非所有主题/插件都已准备就绪。我强烈建议在投入生产之前先建立一个开发站点来测试升级。 – helgatheviking
是的,一旦我们决定实际转向新版本,我们肯定会这样做。目前一切正常,只要它确实如此,那么我们现在就很好。如果一切都会最终兼容,那么我们会考虑升级! 无论哪种方式感谢您的协助。 –
https://en-gb.wordpress.org/plugins/woocommerce-barcode-isbn/ – ggdx
不,我正在扫描产品,以便像这样来自123456789的数字将被放入此字段。由于我所有的产品都有独特的条形码,因此我无需生成自己的条形码。 我正在寻找一种方法来做到这一点,而不需要插件。我也不需要它在我的前端,只是为了后端快速扫描和支付商店中的产品。 –
所以看起来我的代码实际上工作,如果它作为一个分离的插件添加,但没有添加到从主题丰富的Function.php时,它似乎不工作。 它要么返回500错误,要么只是无法正常工作。 有没有人有关于这个问题的线索?我还没有修改任何其他的东西到这个主题的functions.php,我试图把它放在总的结尾或开始没有任何运气。 –