我想在WooCommerce的“管理订单列表”页面中添加一栏,它通知我用户是否是第一次购买。
我认为这个“检查客户是否已经在WooCommerce购买了东西”可以用于我的案例。
但我不知道如何在WooCommerce的“订单”页面上添加它
使用manage\u edit-shop\u order\u列
通过wc_get_customer_order_count($user_id)
,您可以获得客户的订单总数。
注1:由于客人没有$user\u id
,我们使用$billing\u email
来确定当前和以前的订单。
注2:我部分使用了以下函数-CREDITS:@LoicTheAztec
那么你就可以
// Add a Header
function my_shop_order_column( $columns ) {
// Add new column
$columns['first_order'] = 'First order';
return $columns;
}
add_filter( 'manage_edit-shop_order_columns', 'my_shop_order_column', 10, 1 );
// Populate the Column
function my_shop_order_list_column_content( $column, $post_id ) {
// Compare
if ( $column == 'first_order' ) {
// Get order
$order = wc_get_order( $post_id );
// Get user id
$user_id = $order->get_user_id();
// Set variable
$output = '';
// Not a guest
if ( $user_id > 0 ) {
// Get the total orders by a customer.
$count = wc_get_customer_order_count( $user_id );
} else {
// Guest 'user', don't have a user id so we will determine the previous orders based on the billing email
// Get billing email
$billing_email = $order->get_billing_email();
if ( ! empty ( $billing_email ) ) {
// Call function
$count = has_guest_bought_by_email( $billing_email );
}
}
// Output
if ( $count == 1 ) {
$output = 'First order';
} elseif ( $count > 1 ) {
$output = 'Total orders = ' . $count;
}
echo $output;
}
}
add_action( 'manage_shop_order_posts_custom_column' , 'my_shop_order_list_column_content', 10, 2 );
// CREDITS: @LoicTheAztec - https://stackoverflow.com/a/46216073/11987538
function has_guest_bought_by_email( $email ) {
global $wpdb;
// Get all order statuses.
$order_statuses = array_map( 'esc_sql', array_keys( wc_get_order_statuses() ) );
$results = $wpdb->get_col( "
SELECT p.ID FROM {$wpdb->prefix}posts AS p
INNER JOIN {$wpdb->prefix}postmeta AS pm ON p.ID = pm.post_id
WHERE p.post_status IN ( '" . implode( "','", $order_statuses ) . "' )
AND p.post_type LIKE 'shop_order'
AND pm.meta_key = '_billing_email'
AND pm.meta_value = '$email'
" );
// Return result
return count( $results );
}
我想在Woocommerce的管理员查看订单页面上添加futured图像。已创建新列,但未显示产品图像。我应该如何显示订单缩略图?谢谢
我正在为WooCommerce开发一个插件。我想覆盖admin的订单详细信息模板。我已经阅读了关于https://www.skyverge.com/blog/override-woocommerce-template-file-within-a-plugin/,但我仍然不明白如何覆盖admin的订单详细信息模板。以下是我的代码: 它不会在订单详细信息之后调用与
提示 页面模板源码免费开源,在uni-app的插件市场uView的 示例项目 中,在右上角选择"使用 HBuilderX 导入示例项目" 或者 "下载示例项目ZIP", 在HX运行项目即可看到和使用模板。 该页面模板结合了uView的Tabs 标签组件,可以左右滑动。如果页面没有内容,会提示没有相关内容。 具体效果请查看示例,手机上查看效果会更好 ,用户可以根据自己的需求修改页面结构,逻辑,样式等
我正在尝试使用Altova XMLSpy和XQuery1.0为每个客户返回最近的订单。 在SQL中,查询如下所示: 它返回16行,但我无法获得类似于XQuery中的工作。 我尝试了多种不同的代码,我认为我得到的最接近的代码是: 对于XML从MS Access导出的糟糕的标记名表示歉意。 请救命!提前道谢。 编辑:在尝试JoeMFB的解决方案后,当我只需要最近的(或最大日期)时,我会收到每个客户的所
使用以下代码,我可以在WooCommerce产品上获得一个自定义字段,但是如何在订单、结帐和管理订单(后端)上显示它呢? 这是我在每个产品上的自定义字段 这是我的管理订单(后端)详细信息。我尝试显示我在每个产品帖子中输入的正确元数据。 如何在管理订单中显示我在自定义字段中输入的值?我也希望有人能帮助我显示在订单和结帐页面的元。。。或者引导我走向正确的方向。我意识到,为了在管理订单中显示它,我必须确
订单列表 点击“订单列表”菜单,进入订单列表界面,可以看到我购买过的订单。