天天看點

wordpress資料庫結構及表說明

資料表結構:

wp_commentmeta:存儲評論的中繼資料

wp_comments:存儲評論

wp_links:存儲友情連結(Blogroll)

wp_options:存儲WordPress系統選項和插件、主題配置

wp_postmeta:存儲文章(包括頁面、上傳檔案、修訂)的中繼資料

wp_posts:存儲文章(包括頁面、上傳檔案、修訂)

wp_terms:存儲每個目錄、标簽

wp_term_relationships:存儲每個文章、連結和對應分類的關系

wp_term_taxonomy:存儲每個目錄、标簽所對應的分類

wp_usermeta:存儲使用者的中繼資料

wp_users:存儲使用者

按照功能大緻分為五類:

user: 使用者資訊,包括wp_users表和wp_usermeta表。

link:連結資訊,包括wp_links表。

post: 文章及評論資訊,包括wp_posts、wp_postmeta、wp_comments。

category,link_category,tag:這個是比較複雜的資訊子產品,它包含了對分類,連結分類,标簽的管理,包括wp_term,wp_term_relationships和wp_term_taxonomy表。

option: 全局設定資訊,包括wp_options表。

wp_posts

作為一個部落格系統,最核心的當然是部落客發表的一些“文章”了,這些“文章”存放的地方就是這個 wp_posts 表了。注意,這裡所說的“文章”是加引号的,因為這個表裡存放的除了普通的文章之外,還有附件和頁面(page)的一些資訊。表裡面的 post_type 這個字段就是用來标示類型的。還有一點需要注意的就是,這個表裡一些字段是針對于 post_type 的特定類型的,比如 menu_order 這個字段是“頁面(page)”特有的,用來指定“頁面”的順序。post_mime_type 是針對附件的,來指定附件的類型。

wp_postmeta

每篇文章的屬性是不可能僅僅用 wp_posts 表裡的那幾個字段來完全标示的,往往還有一些因人而異的屬性:寫這篇文章時候的心情,地點等等。這些屬性的名稱和值類型都是不确定的,因 此,Wordpress 采用了元資訊(meta)來表示它們。這個表很簡單,隻有 meta_id, post_id, meta_key, meta_value 這四個字段。post_id 是相關 post 的 id。我們注意到 meta_value 是 longtext 類型的,這裡僅是用來存儲值,至于值的确切類型,需要程式員來關心。

在撰寫文章的時候,我們可以發現編輯框下面有一個 Custom Fields 的選項,我們可以在這裡添加 post 的 meta 資訊。

wp_comments

使用者評論。除了評論的内容以外,還記錄了評論使用者的名字,郵箱,網址,浏覽器類型等資訊。比較重要的兩個字段是 comment_post_ID 和 comment_approved,前一個用來訓示這條評論隸屬于哪一篇文章,後一個用來記錄稽核狀況。還有一個比較有意思的是這個 commnet_agent 字段,我們可以利用這個字段來統計一下使用者浏覽器類型。

wp_users

使用者帳号表。存儲使用者名、密碼還有一些使用者的基本資訊。

wp_usermeta

類似上面的 wp_postmeta,存儲一些因人而異的使用者資訊。(比如QQ?ICQ?)

wp_options

用來記錄 WordPress 的一些設定和選項。裡面有一個 blog_id 字段,這個應該是用在 MU 版裡面來标示不同的 Blog 的。

wp_links

用來存儲 Blogroll 裡面的連結。

wp_terms ,  wp_term_relationships,  wp_term_taxonomy

這三個表是這裡面關系最複雜的了,在 WordPress 2.2 及以前的版本中是沒有這三個表的,代之的是 wp_categories、wp_post2cat 和 wp_link2cat 這三個表。對比這兩個版本我們可以發現:在 2.2 版和之前的版本,post 和 link 和 category 的關系都是通過各自單獨的表來記錄的。而在 2.3 版中加入了 tag 的支援,Wordpress 把 post、link、tag 的分類都抽象成了統一的形式,用新的三個表來記錄這些資訊。

wp_terms

記錄分類,連結分類,标簽的一些簡要資訊,包括名稱,縮寫。

wp_term_taxonomy

是對wp_terms中的資訊的關系資訊補充,有所屬類型(category,link_category,tag),較長的描述,父類,所擁有文章(連結)數量。

wp_term_relationships

關系表,多對多的,object_id是與不同的對象關聯,例如wp_posts中的ID(wp_links中的link_id)等,term_taxonomy_id就是關聯wp_term_taxonomy中的term_taxonomy_id。

繼續閱讀