在學校課堂練習時,訂單資料表可能只有 order_head、order_body 兩張而已。但到了職場上,老闆叫你「從後台撈訂單資料做報表」,你會發現 WooCommerce 的訂單資料被拆在一堆 WordPress 核心資料表裡面,再加上一些 WooCommerce 自己的資料表,結構跟你熟悉的「訂單表頭/表身」完全不一樣。 我們在" WordPress 加上 Woocommerce 電子商務,如何從後台撈出商品資料? ",已經知道如何從後台撈出商品資料,現在我們來看看如何從後台撈出[訂單資料]。 首先要確定你的 Woocommerce 是舊的還是 HPOS (High Performance Order Storage 高效能訂單儲存) 的結構。 HPOS 高效能訂單儲存是什麼? 它是 WooCommerce 把「訂單」從 WordPress 的 posts/postmeta 架構搬出去,改用專用訂單資料表來儲存的一套機制(以前叫做 Custom Order Tables)。它採用 WooCommerce 的 CRUD(Create, Read, Update, Delete) 設計,讓訂單查詢更符合電商需求、也更好擴充與最佳化效能。 以往 WooComme…
我們在之前的文章探討過很多[產品/訂單]的實作練習 : 公司的產品資料與訂單 B2B網站的資料流流向圖 這些資料表結構其實都很簡單,就是產品資料表、產品類別資料表、訂單表頭資料表、訂單表身資料表。但是在實際應用上,到了公司上班以後,當老闆叫你從後台撈資料做報表時,你會發現怎麼跟我在學校學的都不一樣呢? 就好像下面這幅漫畫描述的一樣 : 學生會抱怨「老師教的都是沒用的東西」,因為上班時會發現怎麼跟學校學的差這麼多? 其實老師心裡想的是 : 「我教這麼簡單的內容,你都學不會了,我教企業現場應用的東西,不是自找麻煩嗎?」 現在,我們就來自找麻煩一下,看看許多中小企業在使用的 WordPress 平台下,使用 Woocommerce 電子商務的資料表是長什麼樣子? 我們將使用 InfinityFree 的免費平台安裝 WordPress 跟 Woocommerce ,安裝過程就不在這邊贅述,有空再另文說明。 從 phpMyAdmin 管理介面可以看到 WordPress 與 Woocommerce 的一大堆資料表如下 : 我們的目的不是要研究全部資料表,我們只把焦點放在跟 Woocommerce 有關的資料表上。 Woocommerce 由於要跟 WordPress 整合…
先簡單定義: 「資料庫 Database」就是一般的概念,「網路資料庫 Networked / Online Database」是透過網路來存取的資料庫,「分散式資料庫 Distributed Database」則是把同一個邏輯資料庫拆成多個節點分散儲存與運算的系統。 其實「資料庫」跟「網路資料庫」不容易區分開來,只能說某些資料庫更適合使用在網路上,提供使用者同時存取,就能夠稱為「網路資料庫」。 也就是「資料庫 Database」本身只是資料儲存與管理的系統,而「網路資料庫 Networked / Online Database」通常指的是部署在伺服器上,讓多個使用者可以透過網路「同時」連線存取的資料庫。也就是說,多數常見的資料庫系統,只要配合網路與伺服器架構,就可以成為網路資料庫。 早期使用的 Microsoft Access 資料庫,大多都使用在單機上,但是其實他也可以透過網路同時連線存取,只是連線存取的效能不一定可以滿足需求。 我們來嚴謹的定義一下「資料庫」與「網路資料庫」: 「資料庫」定義 : 資料庫是依照某種資料模型 (data model) 與結構化規則 (structured rule),持久化儲存的一組相關資料及其描述(中介資料/詮釋資料,metadata),它…