[WooCommerce] 顯示訂單資訊的短碼(Shortcode)

本篇文章更新時間:2019/06/27
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知。
一介資男的 LINE 社群開站囉!歡迎入群聊聊~


WooCommerce 有不少短碼可以將資訊拆成部件使用。

不過顯示訂單這個功能沒看到怎辦?就自己來組一個啦~

function woocommerce_orders() {
    $user_id = get_current_user_id();
    if ($user_id == 0) {
        //沒登入就呼叫用戶後台的標準短碼
        return do_shortcode('[woocommerce_my_account]');
    } else {
        ob_start();
        //登入的用戶就撈 orders 的樣板來顯示訂單資料
        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');

Gist: Link

Ref: WooCommerce - How to show Order details (my-account) on a separate page

[woocommerce_orders] 用法上也如上參考連結一樣,可以特別客製化過一個顯示訂單資訊的頁面來當客戶後台,不用一定照著 WooCommerce 路徑走了!


Share:

作者: Chun

資訊愛好人士。主張「人人都該為了偷懶而進步」。期許自己成為斜槓到變進度條 100% 的年輕人。[//////////____30%_________]

參與討論

2 則留言

  1. 您好這個顯示無法正常….
    我新增進去只有管理員能看到
    我使用測試帳號無法看 顯示頁面錯誤

    1. 你好,我剛剛測試過是可以使用的哦!你的「頁面錯誤」是確切怎樣的錯誤呢?還有 PHP 有顯示錯誤訊息嗎?

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *