php - 在 WooCommerce 编辑订单页面中添加可变产品属性列
问题描述
基于在 Woocommerce答案代码中添加产品属性列以编辑订单页面,我编写了此函数:
add_action( 'woocommerce_admin_order_item_headers', 'custom_admin_order_items_headers', 20, 1 );
function custom_admin_order_items_headers( $order ){
echo '<th>';
echo __('Marchio', 'woocommerce') . '</th>';
}
add_action('woocommerce_admin_order_item_values', 'my_woocommerce_admin_order_item_values', 10, 3);
function my_woocommerce_admin_order_item_values($_product, $item, $item_id = null) {
$marchio = get_the_terms( $_product->post->ID, 'pa_marchio');
echo '<td>' . $marchio[0]->name . '</td>';
}
它适用于简单的产品,但不适用于可变产品,如何解决?
解决方案
要获取产品 ID,请使用
$item->get_product_id()
你的函数应该是这样的
add_action('woocommerce_admin_order_item_values', 'my_woocommerce_admin_order_item_values', 10, 3);
function my_woocommerce_admin_order_item_values($_product, $item, $item_id = null) {
$marchio = get_the_terms( $item->get_product_id(), 'pa_marchio');
echo '<td>' . $marchio[0]->name . '</td>';
}
查看此帖子以获取更多信息如何访问订单在 Woocommerce 3 中访问订单项目受保护的数据
推荐阅读
- python - 将范围表达式更改为列表的 Pythonic 方法
- excel - 如何复制不连续的列并复制除前 2 行和最后 1 行之外的所有内容而不剪切?当行数很多时,剪切需要很长时间
- html - 最后一个孩子/最后一个类型不能在 div 上工作
- c++ - macOS Mojave 上的 clang++ 问题
- git - 将更改从 git 分支还原到主分支
- c# - 来自 C# gRPC-server 的 RpcException 中的空元数据
- hadoop - hadoop2.8.0 windows setup中无法启动nodemanager
- python - 创建具有给定系数的多项式
- node.js - Angular SSR - 通过快速 API 将 FormData 发送到节点服务器
- function - MIPS 汇编语言电源程序