我可以使用 WooCommerce 脚本做什么?

问题描述 投票:0回答:1

找到了一个脚本,它应该可以帮助我获取所需的信息:客户在订单中历史上使用过的付款方式。

$order = new WC_Order( $order_id );
$payment_title = $order->get_payment_method_title();`

不幸的是,我不知道从哪里开始了解这些信息。我将该字符串发布到什么位置以使其执行我的预期输出?

我想将其导出到 .csv 文件中,以便我可以导入到电子表格中。

到目前为止我发现的一切似乎都认为我已经知道从哪里开始。我只是在寻找一个简单的指示从哪里开始。

php wordpress woocommerce orders payment-method
1个回答
0
投票

要获取客户的支付网关历史记录,您需要:

  • 率先获得客户
  • 获取每个客户的订单
  • 显示这些订单的付款清单

尝试以下操作:

// Get customers IDs
$customers_ids = get_users( array(
    'role__in' => array('customer'),
    'number' => 10,  // First 10 customers
    // 'offset' => 0,
) );
echo '<pre>'. print_r( count($customers_ids), true ) . '</pre>';

// Loop through customers
foreach ( $customers_ids as $user ) {

    echo '<div class="customer">
    <p class="user-id"><strong>User ID:</strong> '.$user->ID.' - <strong>User email:</strong> '.$user->user_email.'</p>';

    // Get Customer paid orders
    $customer_orders = wc_get_orders( array(
        'limit'         => -1,
        'customer'      => $user->ID,
        'status'        => wc_get_is_paid_statuses(),
    ) );

    echo '<ul class="payment-title">';

    // Loop through orders
    foreach( $customer_orders as $order ) {
        printf('<li><strong>Order:</strong> #%s - <strong>Date:</strong> %s - <strong>Payment:</strong> %s</li>', 
            $order->get_id(), 
            $order->get_date_created()->format('Y-m-d'), 
            $order->get_payment_method_title()
        );
    }
    echo '</ul></div>';
}
© www.soinside.com 2019 - 2024. All rights reserved.