如何在 WooCommerce 中添加自定義訂單狀態
已發表: 2020-09-22您是否正在尋找在 WooCommerce 中添加訂單狀態消息的方法? 本文將為您提供解決方案。 由於各種原因,您可能希望包含幾個不同的訂單狀態。 但是,WooCommerce 的默認版本允許您將具有以下狀態之一的訂單標記為已完成、處理中、待付款、暫停、退款、取消或失敗。
您可能希望添加適合您的在線商店流程的訂單狀態名稱,例如“等待發貨”、“正在建設”或其他以滿足他們的履行需求。 然而,WooCommerce 有一個解決這個問題的解決方案,它有一個名為“WooCommerce 訂單狀態管理器”的擴展程序,價格為 49 美元。
對於您的商店來說,這可能是一個昂貴的解決方案,但有一種簡單的方法可以做到這一點。 在當前版本的 WooCommerce 中,訂單狀態保存為自定義帖子狀態,就像草稿、計劃或發布的帖子一樣。
本文的主要目的是展示如何修改訂單數據、向訂單添加信息、從外部導出訂單數據或運行任何需要訂單詳細信息的常規操作。 同樣重要的是要注意這些狀態會觸發進一步的操作,因此您需要為這些操作提供 WooCommerce 代碼。
綜上所述,讓我們深入探討如何在 WooCommerce 中添加訂單狀態消息。 要檢查默認訂單狀態消息,只需登錄您的 WordPress 站點並以管理員用戶身份訪問儀表板。 然後,點擊WooCommerce > 訂單。 你會看到這個:
此外,當客戶嘗試下訂單時,這些消息會顯示在前端。 這可以通過單擊我的帳戶 > 訂單來訪問,如下所示:
a) 使用代碼在 WooCommerce 中添加訂單狀態的步驟
以下是您需要遵循的步驟:
- 登錄您的 WordPress 站點並以管理員用戶身份訪問儀表板。
- 從儀表板菜單中,單擊外觀菜單 > 主題編輯器菜單。 打開主題編輯器頁面後,查找主題函數文件,我們將在其中添加將在 WooCommerce 中添加訂單狀態的函數。
- 將以下代碼添加到php文件中:
/** 添加自定義狀態 */ 功能 register_shipment_arrival_order_status() { register_post_status('wc-arrival-shipment', array( '標籤' => '貨物到達', '公共' => 真的, 'show_in_admin_status_list' => 真, 'show_in_admin_all_list' => 真, 'exclude_from_search' => 假, 'label_count' => _n_noop( '貨物到達<span class="count">(%s)</span>', '貨物到達<span class="count">(%s)</span>' ) )); } add_action('init', 'register_shipment_arrival_order_status'); 功能 add_awaiting_shipment_to_order_statuses( $order_statuses ) { $new_order_statuses = 數組(); foreach ( $order_statuses as $key => $status ) { $new_order_statuses[ $key ] = $status; if ('wc-processing' === $key) { $new_order_statuses['wc-arrival-shipment'] = '貨物到達'; } } 返回 $new_order_statuses; } add_filter('wc_order_statuses', 'add_awaiting_shipment_to_order_statuses');
- 要查看結果,請單擊 WooCommerce > 訂單,然後您將選擇任何訂單並嘗試更改訂單狀態。 您會注意到已添加了一個名為 Shipment Arrival 的新狀態,如下所示:
- 如果您更改訂單狀態並更新它,那麼這將是結果:
代碼如何運作
在上面的代碼中,我使用register_post_status() functio
添加了發布狀態。 如果您仔細查看該功能,會發現訂單狀態有一個 slug,前綴為“ wc-
”,表示 WooCommerce。 之後,我創建了一個數組,其中包含定義自定義帖子狀態的數據。 這意味著標籤是要顯示的內容,因此我可以將其更改為訂單狀態的確切名稱。
add_awaiting_shipment_to_order_statuses() function
會將這個新的自定義帖子狀態添加到 WooCommerce 訂單和編輯訂單頁面中的可用訂單狀態列表中。 因此,這些狀態在這些頁面上可用。
此外,我還包括了foreach
循環,它遍歷當前訂單狀態列表,直到找到我想要的。 在上面的代碼中,Shipment Arrival 將被插入到 Processing order 狀態之後。
b) 使用插件在 WooCommerce 中添加自定義訂單狀態消息的步驟
如果你不是那麼技術,你可以通過使用插件來做到這一點。 它適用於那些不熟悉使用代碼自定義網站的人,或者他們可能不想弄亂網站的編碼結構。
我們要使用的插件是WooCommerce 的自定義訂單狀態。
以下是您需要遵循的步驟:
- 登錄您的 WordPress 站點並以管理員用戶身份訪問儀表板。
- 要直接在管理面板中下載它,只需導航到 Plugins > Add New 。 之後,您需要對插件“ WooCommerce 的自定義訂單狀態”進行關鍵字搜索。 您需要安裝並激活它,如下所示:
- 要進行所需的更改,只需單擊WooCommerce > 設置 > 自定義訂單狀態,如下所示:
- 請記住保存您所做的更改。
結論
在本教程中,我分享了兩個可用於在 WooCommerce 中添加訂單狀態的解決方案。 第一種方法涉及使用我創建的自定義 PHP 代碼來添加訂單狀態。 默認情況下,WooCommerce 沒有添加此選項的選項,此解決方案將為此提供快速修復,因為 WooCommerce 可以擴展。
第二種解決方案可供 WordPress 初學者或不熟悉代碼的不太精通技術的個人使用。 這是一個非常容易實施的解決方案,因為您只需下載名為Custom Order Status for WooCommerce 的插件。
類似文章
- 如何檢查用戶是否在 WordPress 中登錄
- 如何在店面設置後添加產品 [初學者指南]
- 如何逐步使用 WooCommerce 產品屬性 [完整指南]
- 如何在 WooCommerce 中的產品上添加 GTIN 編號
- WooCommerce 結帳後重定向:重定向到自定義感謝頁面
- 如何禁用特定類別的付款方式
- 如何添加產品圖片 WooCommerce 結帳頁面
- 如何在 WooCommerce 中添加自定義運輸方式
- 如何向 WooCommerce 產品添加類別
- 如何禁用運送到另一個地址選項
- 如何在 WooCommerce 中隱藏添加到購物車按鈕
- 如何在 WooCommerce 的商店頁面中隱藏所有產品
- 如何從前端添加 Woocommerce 產品
- 如何在 WooCommerce 商店頁面中更改添加到購物車按鈕文本
- 如何創建 WooCommerce 店面子主題 [完整指南]
- 如何按類別顯示 WooCommerce 產品
- 如何在 WooCommerce 結帳表單中添加額外字段