基于在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
非常感谢您的帮助。 到目前为止,尝试了许多方法,但都没有效果,包括此处的建议: 将产品简短描述添加到Woocommerce管理订单预览中 这是我到目前为止所拥有的: 每个产品都有许多属性,我想在编辑订单页面的新列中显示其中一个属性。 问题是产品属性出于某种原因是空的-如果我只是回显$\u product,则该属性中没有数据,即使在数据库中肯定保存了该属性的值。 有什么想法吗? 我已经附加了一个我想
第一件事:这是我在stackoverflow上发布的第一个问题。换句话说,这是我在你们的帮助下无法独自解决的第一个问题(非常感谢你们,你们让世界运转起来!)。 我的问题与@LoictheAztec对另一个问题的回答有关(我原本计划在那篇文章的评论中发布我的问题,但由于我是/曾经是潜伏者,我缺乏这样做的声誉):https://stackoverflow.com/a/47766413/13263330
在购物车中,我添加了一个按钮来创建报价单。我正在使用一个数量范围定价插件,所以我所有的可变产品都有一个广泛的定价范围。 当数量低于100时,产品A的项目成本为5美元。当数量为100到199时,项目成本为3美元。 我的购物车显示正确的项目成本,我设法检索每个购物车项目的产品价格。但是,我无法设置变更价格并将数据添加到订单中。 有人知道我怎么解决这个问题吗? 先谢谢你。
我在网站上有一个表单,允许用户创建可预订的产品。但是,我找不到如何使用php函数创建可用性间隔。有人有主意吗? 下面是我如何创建我的产品 在这个项目的另一部分中,我使用get_post_元函数来获取可用性。我从文章中了解到可用性是元数据,但我不确定如何更改这些。我试着使用通常的
我试图以编程方式创建一个订单。使用非常简单: 这符合预期,并且为ID为100的简单产品创建了正确数量的订单。 然而,如果我尝试用一个变体来实现这一点,它的行为似乎并不正确。经过多次尝试和错误,我以这种方式完成了工作: 然而,尽管它确实创建了具有正确产品和正确变化ID的订单,订单的总数总是0(巧合的是,这是第一个变化的价格)。 最初我尝试的是
我正在使用此代码添加自定义属性 这个代码的结果我得到了添加只是产品属性名称没有术语值... 我找了很多,但没有得到任何答案。