• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「データベース構造」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(ページ名変更提案を記述)
(【WP2.5 最終版】(編集不可) 節名(Indexes)翻訳とレベル下げ、user2テーブル説明追加ほか。改名テンプレに差替、リンクテキストを一旦「~概要」に戻しました(ノート参照))
1行目: 1行目:
<div style="border:solid black 1px; padding: 4px; background: #ccc;">※ページ名の変更を提案しています。詳しくは[[ノート:データベース概要]]を見てください。</div>
+
{{Rename|D|2008-11-14}}
  
 
__TOC__
 
__TOC__
9行目: 9行目:
 
* テーブル名の接頭辞(<code>wp_</code>)は、WordPress インストール時の設定によります。
 
* テーブル名の接頭辞(<code>wp_</code>)は、WordPress インストール時の設定によります。
 
* プラグインやテーマによって、設定データの追加、既存テーブルへのフィールド追加、新規テーブル作成がなされることがあります。
 
* プラグインやテーマによって、設定データの追加、既存テーブルへのフィールド追加、新規テーブル作成がなされることがあります。
* [[#旧バージョンのデータベース説明|旧バージョンのデータベース説明]]
+
* [[#旧バージョンのデータベース概要|旧バージョンのデータベース概要]]
  
 
<div id="Table_Overview">
 
<div id="Table_Overview">
128行目: 128行目:
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
181行目: 181行目:
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
212行目: 212行目:
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
237行目: 237行目:
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
321行目: 321行目:
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
348行目: 348行目:
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
371行目: 371行目:
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
403行目: 403行目:
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
419行目: 419行目:
 
! フィールド !! タイプ !! Null !! キー !! 初期値 !! 備考 !! 説明
 
! フィールド !! タイプ !! Null !! キー !! 初期値 !! 備考 !! 説明
 
|-
 
|-
| umeta_id || bigint(20) || || PRI || NULL || auto_increment
+
| umeta_id || bigint(20) || || PRI || NULL || auto_increment || ユーザ・メタデータの ID(登録順に自動採番)
 
|-
 
|-
| user_id || bigint(20) || || IND || '0' || FK-&gt;wp_users.ID
+
| user_id || bigint(20) || || IND || '0' || FK-&gt;wp_users.ID || wp_users テーブルのユーザID
 
|-
 
|-
| meta_key || varchar(255) || YES || IND || NULL ||
+
| meta_key || varchar(255) || YES || IND || NULL || || ユーザ・メタデータのキー名(<code>wp_capabilities</code> など)
 
|-
 
|-
| meta_value || longtext || YES ||  || NULL ||
+
| meta_value || longtext || YES ||  || NULL || || 値
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
450行目: 450行目:
 
| user_login || varchar(60) || || IND || || || ログイン名
 
| user_login || varchar(60) || || IND || || || ログイン名
 
|-
 
|-
| user_pass || varchar(64) || || || || || パスワード
+
| user_pass || varchar(64) || || || || || パスワード(暗号化)
 
|-
 
|-
 
| user_nicename || varchar(50) || || IND || || ||  
 
| user_nicename || varchar(50) || || IND || || ||  
458行目: 458行目:
 
| user_url || varchar(100) || || || || || webサイト URI
 
| user_url || varchar(100) || || || || || webサイト URI
 
|-
 
|-
| user_registered || datetime || || || 0000-00-00 00:00:00 || || 登録日
+
| user_registered || datetime || || || 0000-00-00 00:00:00 || || 登録日時
 
|-
 
|-
 
| user_level || int(2) unsigned || || || 0 || ||  
 
| user_level || int(2) unsigned || || || 0 || ||  
469行目: 469行目:
 
|}
 
|}
  
===Indexes===
+
====インデックス====
 
{| table width="60%" border=1
 
{| table width="60%" border=1
 
! キー名 !! 種別 !! Cardinality !! フィールド
 
! キー名 !! 種別 !! Cardinality !! フィールド
480行目: 480行目:
 
|}
 
|}
  
== 旧バージョンのデータベース説明 ==
+
== 旧バージョンのデータベース概要 ==
  
* [{{fullurl:データベース説明 |oldid=1311}} WordPress '''2.3.x''' データベース説明](2008年5月14日版・編集不可)
+
* [{{fullurl:データベース概要 |oldid=1311}} WordPress '''2.3.x''' データベース概要](2008年5月14日版・編集不可)
** [{{fullurl:データベース説明 |diff=cur&oldid=1311}} 最新データベースとの違い](差分表示)
+
** [{{fullurl:データベース概要 |diff=cur&oldid=1311}} 最新データベースとの違い](差分表示)
* [{{fullurl:データベース説明 |oldid=1107}} WordPress '''2.1~2.2.x''' データベース説明](2007年9月28日版・編集不可)
+
* [{{fullurl:データベース概要 |oldid=1107}} WordPress '''2.1~2.2.x''' データベース概要](2007年9月28日版・編集不可)
** [{{fullurl:データベース説明 |diff=cur&oldid=1107}} 最新データベースとの違い](差分表示)
+
** [{{fullurl:データベース概要 |diff=cur&oldid=1107}} 最新データベースとの違い](差分表示)
** 2.3 との違い: 次の 3種類で確認できます。 [[#変更履歴|変更履歴]]、[{{fullurl:データベース説明|oldid=1107}} 2.2 最終版]の(*)印、[{{fullurl:データベース説明 |diff=1311&oldid=1107}} 差分表示]
+
** 2.3 との違い: 次の 3種類で確認できます。 [[#変更履歴|変更履歴]]、[{{fullurl:データベース概要|oldid=1107}} 2.2 最終版]の(*)印、[{{fullurl:データベース概要 |diff=1311&oldid=1107}} 差分表示]
* [[:en:Database_Description/2.0|WordPress '''2.0.x''' データベース説明]](en)
+
* [[:en:Database_Description/2.0|WordPress '''2.0.x''' データベース概要]](en)
  
 
== 変更履歴 ==
 
== 変更履歴 ==
499行目: 499行目:
 
** <code>comments</code> テーブルに KEY が追加されました。(<code>comment_approved_date_gmt</code>、<code>comment_date_gmt</code>)
 
** <code>comments</code> テーブルに KEY が追加されました。(<code>comment_approved_date_gmt</code>、<code>comment_date_gmt</code>)
 
** <code>term_relationships</code> テーブルに <code>term_order</code> フィールドが追加されました。
 
** <code>term_relationships</code> テーブルに <code>term_order</code> フィールドが追加されました。
** 参考: [[プラグインとテーマの移行 -   2.3 から 2.5 への移行 - データベースの変更]]
+
** 参考: [[プラグインとテーマの移行#2.3 から 2.5 への移行|プラグインとテーマの移行 - 2.3 から 2.5 への移行 - データベースの変更]]
 
* [[Version 2.3|2.3]] :
 
* [[Version 2.3|2.3]] :
 
** <code>categories</code>、<code>link2cat</code>、<code>post2cat</code> テーブル廃止、<code>terms</code>、<code>term_taxonomy</code>、<code>term_relationships</code> テーブル追加。
 
** <code>categories</code>、<code>link2cat</code>、<code>post2cat</code> テーブル廃止、<code>terms</code>、<code>term_taxonomy</code>、<code>term_relationships</code> テーブル追加。

2008年11月26日 (水) 05:26時点における版

ページ名検討中: このページ名「データベース構造」について改名が提案されています。ご意見をお寄せください。(2008-11-14)

以下は、WordPress バージョン 2.5 の標準的なインストールで作成されるデータベース・テーブルの概要と説明です。現在、WordPress バージョン 2.5 が対応しているデータベースは、MySQL バージョン 4.0 以上のみです。

WordPress は内部でデータベースと連動しているため、エンドユーザはその構造を気にかける必要はありません。しかしながら、プラグインを作るならば、データベースと直接連結する方法に興味を持つことでしょう。WordPress はwpdb_Class/en 関数を提供して、この作業が簡単になるようにしています。

注:

  • テーブル名の接頭辞(wp_)は、WordPress インストール時の設定によります。
  • プラグインやテーマによって、設定データの追加、既存テーブルへのフィールド追加、新規テーブル作成がなされることがあります。
  • 旧バージョンのデータベース概要

テーブル一覧

WordPress の標準インストールで作成される全テーブルの一覧です。各テーブルが持つ具体的な情報は次節をご覧ください。

WordPress 2.5 テーブル (10)
テーブル名 説明 関連インタフェース画面
wp_comments WordPress へのコメント・トラックバック・ピンバックデータを格納 コメントは投稿記事への反応として読者によって作成される。管理者によるコメント管理は 管理パネル > コメント > コメント/en にて
wp_links リンク作成/en 機能で入力されたリンク情報を格納
wp_options 管理 > 設定 パネルで設定されたオプション設定情報を格納。プラグインの設定情報が格納されることも多い。
wp_postmeta メタデータという各投稿記事特有の情報を格納。投稿に情報を付加するようなプラグインが、その情報を当テーブルに追加することがある。

(カスタムフィールド)

wp_posts WordPress データの核である投稿記事およびページデータを格納
wp_terms 投稿およびリンクの分類(カテゴリ・タグ)に使われる語句の基本情報を格納
wp_term_relationships オブジェクト(wp_posts テーブルの各投稿記事wp_links テーブル内の各リンク)と wp_term_taxonomy の(少なくとも 1)カテゴリ・タグとの関連付け情報を格納
wp_term_taxonomy 投稿およびリンクの分類上の語句(カテゴリ・タグ)データを格納
wp_usermeta 各ユーザ特有のユーザ・メタデータを格納
wp_users 登録ユーザ情報を格納

テーブル詳細

WordPress の標準インストールで作成される各テーブルの項目一覧です。

テーブル: wp_comments

フィールド タイプ Null キー 初期値 備考 説明
comment_ID bigint(20) unsigned PRI NULL auto_increment コメントID(投稿順に自動採番)
comment_post_ID int(11) IND 0 FK->wp_posts.ID コメントが属する投稿ID
comment_author tinytext コメント投稿者
comment_author_email varchar(100) コメント投稿者の Eメールアドレス
comment_author_url varchar(200) コメント投稿者のウェブサイトURL
comment_author_IP varchar(100) コメント投稿者の IPアドレス
comment_date datetime 0000-00-00 00:00:00 コメント投稿日時
comment_date_gmt datetime IND & IND Pt2 0000-00-00 00:00:00 コメント投稿日時(GMT)
comment_content text コメント内容
comment_karma int(11) 0
comment_approved varchar(20) IND & Ind Pt1 1 コメントの承認状態
  • '0': 承認待ち
  • '1': 承認済み
  • 'spam': スパム
comment_agent varchar(255) コメント投稿者のユーザエージェント
comment_type varchar(20) コメントの種類
  • 'trackback': トラックバック
  • 'pingback': ピンバック
  • 通常コメントは値なし
comment_parent bigint(20) 0 FK->wp_comment.ID
user_id bigint(20) 0 FK->wp_users.ID コメント投稿者が登録ユーザであるとき、そのユーザID

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 1 comment_ID
comment_approved INDEX None comment_approved
comment_post_ID INDEX None comment_post_ID
comment_approved_date_gmt INDEX None comment_approved
comment_date_gmt
comment_date_gmt INDEX None comment_date_gmt
フィールド タイプ Null キー 初期値 備考 説明
link_id bigint(20) PRI NULL auto_increment リンクID(登録順に自動採番)
link_url varchar(255) リンク URL
link_name varchar(255) リンク名
link_image varchar(255) リンク画像の URI
link_target varchar(25) リンクターゲット
link_category bigint(20) IND 0
link_description varchar(255) 説明
link_visible varchar(20) IND Y
  • 'Y': 表示する
  • 'N': 表示しない
link_owner int(11) 1
link_rating int(11) 0 評価
link_updated datetime 0000-00-00 00:00:00
link_rel varchar(255)
link_notes mediumtext メモ
link_rss varchar(255) リンクのフィード URI

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 7 link_ID
link_category INDEX None link_category
link_visible INDEX None link_visible

テーブル: wp_options

フィールド タイプ Null キー 初期値 備考 説明
option_id bigint(20) PRI Pt1 NULL auto_increment
blog_id int(11) PRI Pt2 0
option_name varchar(64) PRI Pt3 & IND
option_value longtext
autoload varchar(20) yes
  • 'yes':
  • 'no':

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 90 option_id
blog_id
option_name
option_name INDEX None option_name

テーブル: wp_postmeta

フィールド タイプ Null キー 初期値 備考 説明
meta_id bigint(20) PRI NULL auto_increment メタデータのユニークID
post_id bigint(20) IND 0 FK->wp_posts.ID 投稿記事ID
meta_key varchar(255) YES IND NULL カスタムフィールドのキー名
meta_value longtext YES NULL カスタムフィールドの値

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 0 meta_ID
post_id INDEX None post_id
meta_key INDEX None meta_key

テーブル: wp_posts

フィールド タイプ Null キー 初期値 備考 説明
ID bigint(20) unsigned PRI & IND Pt4 auto_increment 投稿ID(保存順に自動採番)
post_author bigint(20) 0 FK->wp_users.ID 投稿者のユーザID
post_date datetime IND Pt3 0000-00-00 00:00:00 投稿日時
post_date_gmt datetime 0000-00-00 00:00:00 投稿日時(GMT)
post_content longtext 本文
post_title text タイトル
post_category int(4) 0
post_excerpt text 抜粋オプション
post_status varchar(20) IND PT2 publish 投稿ステータス
  • 'publish': 公開済み
  • 'pending': ペンディング
  • 'draft': 草稿
  • 'private': プライベート
  • 'static':(2.0.x 以前はページ
  • 'object':
  • 'attachment':
  • 'inherit': 添付ファイル
  • 'future': 予約投稿
comment_status varchar(20) open コメントステータス
  • 'open': 許可
  • 'closed': 不許可
  • 'registered_only': 登録ユーザのみ
ping_status varchar(20) open ピン・ステータス
  • 'open': トラックバック・ピンバックを受け付ける
  • 'closed': 受け付けない
post_password varchar(20) 閲覧パスワード
post_name varchar(200) IND 投稿スラッグ
to_ping text
pinged text ピン通知済み URL
post_modified datetime 0000-00-00 00:00:00 更新日時
post_modified_gmt datetime 0000-00-00 00:00:00 更新日時(GMT)
post_content_filtered text
post_parent bigint(20) 0 FK->wp_posts.ID 親ページの投稿ID、添付ファイルが属する投稿ID
guid varchar(255)
menu_order int(11) 0 ページの表示順
post_type varchar(20) IND Pt1 post 種類
  • 'post': 記事
  • 'page': ページ
  • 'attachment': 添付ファイル
post_mime_type varchar(100) 添付ファイルのとき MIMEタイプ(image/png など)
comment_count bigint(20) 0 コメント数

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 2 ID
post_name INDEX None post_name
type_status_date INDEX None post_type
post_status
post_date
ID

テーブル: wp_terms

フィールド タイプ Null キー 初期値 備考 説明
term_id bigint(20) PRI auto_increment term のユニークID
name varchar(55) term 名
slug varchar(200) UNI term スラッグ。term 名を URL で扱いやすい形にしたもの
term_group bigint(10) 0 類義語のグルーピング

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 2 term_ID
slug UNIQUE 2 slug

テーブル: wp_term_relationships

フィールド タイプ Null キー 初期値 備考 説明
object_id bigint(20) PRI Pt1 0 記事ID or リンクID
term_taxonomy_id bigint(20) PRI Pt2 & IND 0 FK->wp_term_taxonomy.term_taxonomy_id term_taxonomy テーブルの term_taxonomy_id
term_order int(11) 0

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 8 object_id
term_taxonomy_id
term_taxonomy_id INDEX None term_taxonomy_id

テーブル: wp_term_taxonomy

フィールド タイプ Null キー 初期値 備考 説明
term_taxonomy_id bigint(20) PRI auto_increment term+taxonomy ペアのユニークID
term_id bigint(20) UNI Pt1 0 FK->wp_terms.term_id wp_terms テーブルの term_id
taxonomy varchar(32) UNI Pt2 term が属する taxonomy
  • 'category': 記事カテゴリ
  • 'link_category': リンクカテゴリ
  • 'post_tag': タグ
description longtext term の分類上の説明。「カテゴリ説明」など
parent bigint(20) 0 分類上の term 間の上下関係
count bigint(20) 0 term+taxonomy ペアに関連付けられたオブジェクト数。taxonomy='category' であればこのカテゴリに属する投稿記事数

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 2 term_taxonomy_id
term_id_taxonomy UNIQUE 2 term_id
taxonomy

テーブル: wp_usermeta

フィールド タイプ Null キー 初期値 備考 説明
umeta_id bigint(20) PRI NULL auto_increment ユーザ・メタデータの ID(登録順に自動採番)
user_id bigint(20) IND '0' FK->wp_users.ID wp_users テーブルのユーザID
meta_key varchar(255) YES IND NULL ユーザ・メタデータのキー名(wp_capabilities など)
meta_value longtext YES NULL

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 4 umeta_id
user_id INDEX None user_id
meta_key INDEX None meta_key

テーブル: wp_users

フィールド タイプ Null キー 初期値 備考 説明
ID bigint(20) unsigned PRI NULL auto_increment ユーザID
user_login varchar(60) IND ログイン名
user_pass varchar(64) パスワード(暗号化)
user_nicename varchar(50) IND
user_email varchar(100) Eメールアドレス
user_url varchar(100) webサイト URI
user_registered datetime 0000-00-00 00:00:00 登録日時
user_level int(2) unsigned 0
user_activation_key varchar(60)
user_status int(11) 0
display_name varchar(250) 表示名

インデックス

キー名 種別 Cardinality フィールド
PRIMARY PRIMARY 1 ID
user_login_key INDEX None user_login
user_nicename INDEX None user_nicename

旧バージョンのデータベース概要

変更履歴

  • 2.5 :
    • 全ての enum タイプのフィールドが varchar(20) に変更されました。
      • comments テーブル: comment_approved フィールド
      • links テーブル: link_visible フィールド
      • options テーブル: autoload フィールド
      • posts テーブル: post_statuscomment_statusping_status フィールド
    • comments テーブルに KEY が追加されました。(comment_approved_date_gmtcomment_date_gmt
    • term_relationships テーブルに term_order フィールドが追加されました。
    • 参考: プラグインとテーマの移行 - 2.3 から 2.5 への移行 - データベースの変更
  • 2.3 :
    • categorieslink2catpost2cat テーブル廃止、termsterm_taxonomyterm_relationships テーブル追加。
    • options テーブルより 6フィールド削除。
    • posts テーブルの post_status フィールドに新規ステータス 'pending' を追加。
    • 参考: プラグインとテーマの移行 - 2.2 から 2.3 への移行
  • 2.1 :
    • linkcategories テーブル廃止。リンクカテゴリデータを categories テーブルにマージ、ID付け替え。
    • posts テーブルに post_type フィールドを追加。記事/ページを判別。2.0.x では、「ページ」=post_status フィールドが 'static'
    • posts テーブルの post_status フィールドに、予約投稿(未来日投稿)を示す 'future' を追加。2.0.x では NOW() を使用。
    • 参考: プラグインとテーマの 2.1 への移行 - コア WordPress DB の変更点

最新英語版: WordPress Codex » Database Description最新版との差分