我知道此代码显示“我的帐户页面”之外的订单:
function woocommerce_orders() {
$user_id = get_current_user_id();
if ($user_id == 0) {
return do_shortcode('[woocommerce_my_account]');
}else{
ob_start();
wc_get_template( 'myaccount/my-orders.php', array(
'current_user' => get_user_by( 'id', $user_id),
'order_count' => $order_count
) );
return ob_get_clean();
}
}
add_shortcode('woocommerce_orders', 'woocommerce_orders');
所以我尝试了这个:
- 在我的孩子主题中创建了一条路径 - woocommerce/myaccount/my-bookings.php
- 将 my-bookings.php 文件复制到那里
- 将代码更改为:
function woocommerce_bookings() {
$user_id = get_current_user_id();
if ($user_id == 0) {
return do_shortcode('[woocommerce_my_account]');
}else{
ob_start();
wc_get_template( 'myaccount/my-bookings.php', array(
'current_user' => get_user_by( 'id', $user_id),
'order_count' => $order_count
) );
return ob_get_clean();
}
}
add_shortcode('woocommerce_bookings', 'woocommerce_bookings');
现在我得到了表格,但它是空的并且有一个错误:
“警告:第 40 行 /home/istolar0/clients/com-unity/wp-content/themes/Avada-Child-Theme/woocommerce/myaccount/my-bookings.php 中为 foreach() 提供的参数无效”
我认为这是因为预订模板中没有“当前用户”和“订单”——所以我不确定该放什么。