問題描述
在開發需要資料儲存的外掛時,使用一種或多種方法有哪些優點和缺點?
explanation given in the codex 沒有詳細說明:
Before jumping in with a whole new table, however, consider if storing your plugin’s data in WordPress’ Post Meta (a.k.a. Custom Fields) would work. Post Meta is the preferred method; use it when possible/practical.
最佳解決方案
那麼,如果我拿起一個 WP 指令碼小子的帽子,我的答案是:使用 post_meta,永遠。
但是,我碰巧知道有關資料庫的一兩件事情,所以我的答案是:永遠不要使用 EAV(也稱為 post_meta 表) 儲存可能需要查詢的資料。
在索引方面,元表中基本上沒有值得使用。所以,如果您正在儲存資料型別 XYZ,並希望您查詢所有具有 XYZ 值的值為'abc'的帖子,那麼… 祝你好運。 (請參閱 WP trac 中的所有使用者/角色/帽子相關票據,以便您瞭解如何獲取血液。)
在連線方面,您很快就會崩潰到最佳化程式決定使用通用演演算法的限制,而不是在有多個連線條件時分析查詢。
因此,不,不,不,不。永遠不要永遠使用元。除非’s you’re 儲存是化妝品,而且不會成為查詢條件的一部分。
它分解到你的應用程式如果你正在儲存一個電影導演的誕生日子,那就是大事。使用你想要的所有元素。但是,如果您正在儲存電影的釋出日期,那麼您不要使用單獨的表格 (或在帖子表中新增列),並在該列中新增索引。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。