WordPress表結構詳細說明

來源:互聯網
上載者:User
文章目錄
  • 三、Wordpress表按功能分類

Url:http://www.girlcoding.com/2011/08/wordpress-database-design/

WordPress一共有以下11個表。這裡加上了預設的表首碼 wp_ 。

  • wp_commentmeta:儲存評論的中繼資料
  • wp_comments:儲存評論
  • wp_links:儲存友情連結(Girl is coding)
  • wp_options:儲存WordPress系統選項和外掛程式、主題配置
  • wp_postmeta:儲存文章(包括頁面、上傳檔案、修訂)的中繼資料
  • wp_posts:儲存文章(包括頁面、上傳檔案、修訂)
  • wp_terms:儲存每個目錄、標籤、分類
  • wp_term_relationships:儲存每個文章、連結和對應分類的關係
  • wp_term_taxonomy:儲存每個目錄、標籤所對應的分類
  • wp_usermeta:儲存使用者的中繼資料
  • wp_users:儲存使用者
  • 在WordPress的資料庫結構中,儲存系統選項和外掛程式配置的wp_options表是比較獨立的結構,在後文中會提到,它採用了key-value模式儲存,這樣做的好處是易於拓展,各個外掛程式都可以輕鬆地在這裡儲存自己的配置。

    post,comment,user 則是三個基本表加上拓展表的組合。以wp_users為例,wp_users已經儲存了每個使用者會用到的基本資料,比如 login_name、display_name、 password、email等常用資訊,但如果我們還要儲存一些不常用的資料,最好的做法不是去在表後加上一列,去破壞預設的表結構,而是將資料存在wp_usermeta中。wp_usermeta這個拓展表和wp_options表有類似的結構,我們可以在這裡儲存每個使用者的QQ號碼、手機號碼、登入WordPress背景主題選項等等。

    比較難以理解的是term,即wp_terms、wp_term_relationships、wp_term_taxonomy。在WordPress的系統裡,我們常見的分類有文章的分類、連結的分類,實際上還有TAG,它也是一種特殊的分類方式,我們甚至還可以建立自己的分類方法。WordPress將所有的分類及分類方法、對應結構都記錄在這三個表中。wp_terms記錄了每個分類的名字以及基本資料,如本站分為“WordPress開發”、“WPCEO外掛程式”等,這裡的分類指廣義上的分類,所以每個TAG也是一個“分類”。wp_term_taxonomy記錄了每個分類所歸屬的分類方法,如“WordPress開發”、“WPCEO外掛程式”是文章分類(category),放置友情連結的“我的朋友”、“我的同事”分類屬於友情連結分類(link_category)。wp_term_relationships記錄了每個文章(或連結)所對應的分類方法。

    慶幸的是,關於term的使用,WordPress中相關函數的使用方法還是比較清晰明了,我們就沒必要糾結於它的構造了。

    wp_commentmeta

    • meta_id:自增唯一ID
    • comment_id:對應評論ID
    • meta_key:鍵名
    • meta_value:索引值

    wp_comments

    • comment_ID:自增唯一ID
    • comment_post_ID:對應文章ID
    • comment_author:評論者
    • comment_author_email:評論者郵箱
    • comment_author_url:評論者網址
    • comment_author_IP:評論者IP
    • comment_date:評論時間
    • comment_date_gmt:評論時間(GMT+0時間)
    • comment_content:評論本文
    • comment_karma:未知
    • comment_approved:評論是否被批准
    • comment_agent:評論者的USER AGENT
    • comment_type:評論類型(pingback/普通)
    • comment_parent:父評論ID
    • user_id:評論者使用者ID(不一定存在)

    wp_links

    • link_id:自增唯一ID
    • link_url:連結URL
    • link_name:連結標題
    • link_image:連結圖片
    • link_target:連結開啟檔案
    • link_description:連結描述
    • link_visible:是否可見(Y/N)
    • link_owner:添加者使用者ID
    • link_rating:評分等級
    • link_updated:未知
    • link_rel:XFN關係
    • link_notes:XFN注釋
    • link_rss:連結RSS地址

    wp_options

    • option_id:自增唯一ID
    • blog_id:部落格ID,用於多使用者部落格,預設0
    • option_name:鍵名
    • option_value:索引值
    • autoload:在WordPress載入時自動載入(yes/no)

    wp_postmeta

    • meta_id:自增唯一ID
    • post_id:對應文章ID
    • meta_key:鍵名
    • meta_value:索引值

    wp_posts

    • ID:自增唯一ID
    • post_author:對應作者ID
    • post_date:發布時間
    • post_date_gmt:發布時間(GMT+0時間)
    • post_content:本文
    • post_title:標題
    • post_excerpt:摘要
    • post_status:文章狀態(publish/auto-draft/inherit等)
    • comment_status:評論狀態(open/closed)
    • ping_status:PING狀態(open/closed)
    • post_password:文章密碼
    • post_name:文章縮減名
    • to_ping:未知
    • pinged:已經PING過的連結
    • post_modified:修改時間
    • post_modified_gmt:修改時間(GMT+0時間)
    • post_content_filtered:未知
    • post_parent:父文章,主要用於PAGE
    • guid:未知
    • menu_order:排序ID
    • post_type:文章類型(post/page等)
    • post_mime_type:MIME類型
    • comment_count:評論總數

    wp_terms

    • term_id:分類ID
    • name:分類名
    • slug:縮減名
    • term_group:未知

    wp_term_relationships

    • object_id:對應文章ID/連結ID
    • term_taxonomy_id:對應分類方法ID
    • term_order:排序

    wp_term_taxonomy

    • term_taxonomy_id:分類方法ID
    • term_id:
    • taxonomy:分類方法(category/post_tag)
    • description:未知
    • parent:所屬父分類方法ID
    • count:文章數統計

    wp_usermeta

    • umeta_id:自增唯一ID
    • user_id:對應使用者ID
    • meta_key:鍵名
    • meta_value:索引值

    wp_users

    • ID:自增唯一ID
    • user_login:登入名稱
    • user_pass:密碼
    • user_nicename:暱稱
    • user_email:Email
    • user_url:網址
    • user_registered:註冊時間
    • user_activation_key:啟用碼
    • user_status:使用者狀態
    • display_name:顯示名稱
    三、Wordpress表按功能分類

    按照功能大致分為五類 :

    ① 使用者資訊: wp_users和wp_usermeta

    ② 連結資訊: wp_links

    ③ 文章及評論資訊: wp_posts、wp_postmeta、wp_comments、wp_commentmeta

    ④ 對分類,連結分類,標籤管理: wp_term,wp_term_relationships,wp_term_taxonomy

    ⑤全域設定資訊: wp_options

    (1)  wp_posts

    部落格發表”文章”存放的地方就是這個wp_posts表了。這個表裡存放的除了普通的文章之外,還有附件和頁面(page)的一些資訊。post_type欄位是用來區分文章類型的。如果post_type是’post’,那麼就是文章,如果是’page’,那麼就是頁面,如果是’attachment’,那麼就是附件了.

    (2)  wp_postmeta

    這個表很簡單,只有 meta_id, post_id, meta_key, meta_value 這四個欄位。post_id 是相關 “文章” 的id。meta_value 是longtext類型的,這裡僅是用來儲存值。在撰寫文章的時候,在編輯框下面有一個 Custom Fields 的選項,我們可以在這裡添加post的meta資訊。

    (3)  wp_comments

    比較重要的兩個欄位是 comment_post_ID 和 comment_approved,前一個用來指示這條評論隸屬於哪一篇文章,後一個用來記錄審核狀況。還有一個比較有意思的是這個 commnet_agent 欄位,可以利用這個欄位來統計一下使用者瀏覽器類型。

    (4)  wp_commentmeta

    現在WordPress 2.9 將要支援評論資料項目(commentmeta)。目前還不確定這一功能有何用途。

    (5)  wp_users

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

    (6)  wp_usermeta

    類似上面的 wp_postmeta,儲存一些其他的使用者資訊。

    (7)  wp_options

    用來記錄Wordpress的一些設定和選項。裡面有一個blog_id欄位,這個應該是用在MU版裡面來標示不同的 Blog 的。autoload這個欄位用來控制是否選項總是被WordPress或者外掛程式匯入並緩衝來使用,或者是否只是在要求的情況下才被匯入。

    (8)  wp_links

    用來儲存 Blogroll 裡面的連結。

    (9)  wp_terms

    它儲存(term)的基本資料。name 就是 term 的名字,slug 是用於使得 URL 友好化。term_group 是用於把相似的 terms 集合在一起。term_id 是term的唯一ID。

    (10)  wp_term_taxonomy

    分類資訊,是對wp_terms中的資訊的關係資訊補充,有所屬類型(category,link_category,tag),詳細描述所擁有文章(連結)數量。

    (11)  wp_term_relationships

    把posts和links這些對象和term_taxonomy表中的term_taxonomy_id聯絡起來的關係表,object_id是與不同的對象關聯,例如wp_posts中的ID(wp_links中的link_id)等,term_taxonomy_id就是關聯wp_term_taxonomy中的term_taxonomy_id。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.