如何编辑订单布局 table (orders.php)
How to edit layout of orders table (orders.php)
我想更改 orders.php 中 table 的布局。具体来说,我不想让行包含数据(名称、日期、状态等),而是希望每个产品都有单独的水平卡片。
示例:https://i.stack.imgur.com/itdGU.png。我正在尝试使用短代码来执行此操作,但我不确定这是否是正确的方法。谁能给我指路?
现在我正在尝试这种方式:下面的代码有效并且returns 所有订单号都正确。但是,我将所有订单号并排显示为一行简单的文本:https://i.stack.imgur.com/RqdVC.png。我不知道如何插入 div 或 css 类 来更改布局。
即使我添加了 css 类,剩下的问题是如何添加其他元素,例如名称、价格、状态等。不确定是否可以在一个短代码中全部完成。建议 ?
// GET ALL ORDERS NUMBER OF CURRENT USER
// Give the callback function a clear and descriptive name.
add_shortcode( 'prcsed_order_numbers' , 'prcsed_order_1' );
function prcsed_order_1() {
// Get all orders for the current user.
$customer_orders = wc_get_orders([
'customer_id' => get_current_user_id(),
]);
// Transform the array of order objects into an array of order names.
$order_numbers = array_map( function( $order ) {
return $order->get_order_number();
}, $customer_orders );
// Return as a string, ready for output,
return implode( ', ', $order_numbers );
}
扩展我之前输入的内容。您可以使用您在 $order_numbers
中已经执行的操作来访问更多订单变量。这是我在独立的 WooCommerce 测试站点上测试过的内容。您将需要输入您的客户 ID 函数并修改 return HTML 结构以简化样式和编辑。我有的东西不干净,但确实有效。
$results = wc_get_orders([ 'cutomer_id'=>1 ]);
foreach ( $results as $order ) {
$first_name = $order->get_billing_first_name();
$last_name = $order->get_billing_last_name();
$status = $order->get_status();
echo '<h1>' . $first_name . ' ' . $last_name . '</h1><p>' . $status . '</p>';
}
下面的 link 为您提供了您需要访问的订单对象的 functions/hooks。 https://www.businessbloomer.com/woocommerce-easily-get-order-info-total-items-etc-from-order-object/
我想更改 orders.php 中 table 的布局。具体来说,我不想让行包含数据(名称、日期、状态等),而是希望每个产品都有单独的水平卡片。
示例:https://i.stack.imgur.com/itdGU.png。我正在尝试使用短代码来执行此操作,但我不确定这是否是正确的方法。谁能给我指路?
现在我正在尝试这种方式:下面的代码有效并且returns 所有订单号都正确。但是,我将所有订单号并排显示为一行简单的文本:https://i.stack.imgur.com/RqdVC.png。我不知道如何插入 div 或 css 类 来更改布局。
即使我添加了 css 类,剩下的问题是如何添加其他元素,例如名称、价格、状态等。不确定是否可以在一个短代码中全部完成。建议 ?
// GET ALL ORDERS NUMBER OF CURRENT USER
// Give the callback function a clear and descriptive name.
add_shortcode( 'prcsed_order_numbers' , 'prcsed_order_1' );
function prcsed_order_1() {
// Get all orders for the current user.
$customer_orders = wc_get_orders([
'customer_id' => get_current_user_id(),
]);
// Transform the array of order objects into an array of order names.
$order_numbers = array_map( function( $order ) {
return $order->get_order_number();
}, $customer_orders );
// Return as a string, ready for output,
return implode( ', ', $order_numbers );
}
扩展我之前输入的内容。您可以使用您在 $order_numbers
中已经执行的操作来访问更多订单变量。这是我在独立的 WooCommerce 测试站点上测试过的内容。您将需要输入您的客户 ID 函数并修改 return HTML 结构以简化样式和编辑。我有的东西不干净,但确实有效。
$results = wc_get_orders([ 'cutomer_id'=>1 ]);
foreach ( $results as $order ) {
$first_name = $order->get_billing_first_name();
$last_name = $order->get_billing_last_name();
$status = $order->get_status();
echo '<h1>' . $first_name . ' ' . $last_name . '</h1><p>' . $status . '</p>';
}
下面的 link 为您提供了您需要访问的订单对象的 functions/hooks。 https://www.businessbloomer.com/woocommerce-easily-get-order-info-total-items-etc-from-order-object/