Languages: English • العربية • 日本語 中文(简体) • 한국어 • Русский • (Add your language)
Ниже приводится схема и описание таблиц базы данных, созданных во время стандартной установки WordPress. Структура базы данных и диаграмма ниже были в последний раз обновлены в версии 4.4.
WordPress поддерживает только MySQL версии 5.0.15 или выше, или любую версию MariaDB.
См. также предыдущие версии Описания Структуры Базы Данных для WordPress 1.5, WordPress 2.0, WordPress 2.2, WordPress 2.3, WordPress 2.5, WordPress 2.7, WordPress 2.8, WordPress 2.9 и WordPress 3.3.
Поскольку WordPress взаимодействует с этой базой данных сам, вам, как конечному пользователю, не нужно сильно беспокоиться о ее структуре. Однако, если вы пишете плагин, вам может быть интересно узнать, как WordPress хранит свои данные. Если вы уже пытались использовать существующий WordPress API для доступа к нужным вам данным, но решили, что это невозможно без прямого доступа к базе данных, WordPress предоставляет класс wpdb, чтобы упростить эту задачу.
На диаграмме ниже представлен визуальный обзор базы данных WordPress и связей между таблицами, созданными в ходе стандартной установки WordPress. В приведенном ниже Обзоре Таблиц, содержатся дополнительные сведения о таблицах и столбцах базы данных.
Пожалуйста, обратите внимание, что при стандартной установке WordPress, целостность данных между таблицами не обеспечивается, например между постами и комментариями. Если вы создаете плагин или расширение, которое манипулирует базой данных WordPress, ваш код должен выполнять служебную работу, чтобы в таблицах не оставалось бесхозных записей, например, удаляя записи в других таблицах с помощью набора команд SQL, при удалении внешних ключей (не забудьте напомнить пользователям о необходимости резервного копирования перед такими операциями).
В этом разделе представлен обзор всех таблиц, созданных во время стандартной установки WordPress. За этим следует конкретная информация о том, что находится в каждой таблице.
Таблицы WordPress 4.4 (12) | ||
---|---|---|
Имя таблицы | Описание | Соответствующие области пользовательского интерфейса WordPress |
wp_commentmeta | У каждого комментария есть информация, называемая метаданные и она хранится в таблице wp_commentmeta. | |
wp_comments | В таблице wp_comments в WordPress хранятся собственно сами Комментарии. | |
wp_links | Таблица wp_links хранит информацию, относящуюся к ссылкам функциональность которых была введена как Links в WordPress. (Эта функциональность устарела, но её можно снова включить с помощью плагина Links Manager plugin.) |
|
wp_options | Настройки, сделанные в Administration > Settings панели хранятся в таблице wp_options. Названия настроек option_name и их значения по умолчанию, см. в Option Reference. |
|
wp_postmeta | У каждой записи есть информация, называемая метаданные и она хранится в таблице wp_postmeta. Некоторые плагины могут добавлять в эту таблицу их собственную информацию. |
|
wp_posts | Самые важные данные в WordPress это записи. Они хранятся в таблице wp_posts. В этой таблице также хранятся Страницы и элементы меню навигации. |
|
wp_terms | В таблице wp_terms хранятся категории как для записей так и для ссылок, а также теги для записей. |
|
wp_termmeta | У каждого термина есть информация, называемая метаданные и она хранится в таблице wp_termmeta. | |
wp_term_relationships | Записи связываются с категориями и тегами с помощью таблицы wp_terms и эти связи обслуживаются в таблице wp_term_relationships. Связи ссылок с соответствующими их категориями, также хранятся в этой таблице. | |
wp_term_taxonomy | Эта таблица описывает таксономию (категорию, ссылку или тег) для записей в таблице wp_terms. | |
wp_usermeta | У каждого пользолвателя есть информация, называюемая метаданные и она хранится в таблице wp_usermeta. | |
wp_users | Списокпользователей обслуживается в таблице wp_users. |
Ниже приведены конкретные поля в каждой из таблиц, созданных во время стандартной установки WordPress.
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
meta_id | bigint(20) unsigned | PRI | auto_increment | ||
comment_id | bigint(20) unsigned | IND | 0 | ||
meta_key | varchar(255) | YES | IND | NULL | |
meta_value | longtext | YES | NULL |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | meta_id |
comment_id | INDEX | comment_id |
meta_key | INDEX | meta_key |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
comment_ID | bigint(20) unsigned | PRI | auto_increment | ||
comment_post_ID | bigint(20) unsigned | IND | 0 | ||
comment_author | tinytext | ||||
comment_author_email | varchar(100) | IND | |||
comment_author_url | varchar(200) | ||||
comment_author_IP | varchar(100) | ||||
comment_date | datetime | 0000-00-00 00:00:00 | |||
comment_date_gmt | datetime | IND & IND Pt2 | 0000-00-00 00:00:00 | ||
comment_content | text | ||||
comment_karma | int(11) | 0 | |||
comment_approved | varchar(20) | IND Pt1 | 1 | ||
comment_agent | varchar(255) | ||||
comment_type | varchar(20) | ||||
comment_parent | bigint(20) unsigned | IND | 0 | ||
user_id | bigint(20) unsigned | 0 |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | comment_ID |
comment_post_ID | INDEX | comment_post_ID |
comment_approved_date_gmt | INDEX | comment_approved comment_date_gmt |
comment_date_gmt | INDEX | comment_date_gmt |
comment_parent | INDEX | comment_parent |
comment_author_email | INDEX | comment_author_email |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
link_id | bigint(20) unsigned | PRI | auto_increment | ||
link_url | varchar(255) | ||||
link_name | varchar(255) | ||||
link_image | varchar(255) | ||||
link_target | varchar(25) | ||||
link_description | varchar(255) | ||||
link_visible | varchar(20) | IND | Y | ||
link_owner | bigint(20) unsigned | 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) |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | link_id |
link_visible | INDEX | link_visible |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
option_id | bigint(20) unsigned | PRI | auto_increment | ||
option_name | varchar(64) | UNI | |||
option_value | longtext | ||||
autoload | varchar(20) | yes |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | option_id |
option_name | UNIQUE | option_name |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
meta_id | bigint(20) unsigned | PRI | auto_increment | ||
post_id | bigint(20) unsigned | IND | 0 | ||
meta_key | varchar(255) | YES | IND | NULL | |
meta_value | longtext | YES | NULL |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | meta_id |
post_id | INDEX | post_id |
meta_key | INDEX | meta_key |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
ID | bigint(20) unsigned | PRI & IND Pt4 | auto_increment | ||
post_author | bigint(20) unsigned | IND | 0 | ||
post_date | datetime | IND Pt3 | 0000-00-00 00:00:00 | ||
post_date_gmt | datetime | 0000-00-00 00:00:00 | |||
post_content | longtext | ||||
post_title | text | ||||
post_excerpt | text | ||||
post_status | varchar(20) | IND PT2 | publish | ||
comment_status | varchar(20) | open | |||
ping_status | varchar(20) | open | |||
post_password | varchar(20) | ||||
post_name | varchar(200) | IND | |||
to_ping | text | ||||
pinged | text | ||||
post_modified | datetime | 0000-00-00 00:00:00 | |||
post_modified_gmt | datetime | 0000-00-00 00:00:00 | |||
post_content_filtered | longtext | ||||
post_parent | bigint(20) unsigned | IND | 0 | ||
guid | varchar(255) | ||||
menu_order | int(11) | 0 | |||
post_type | varchar(20) | IND Pt1 | post | ||
post_mime_type | varchar(100) | ||||
comment_count | bigint(20) | 0 |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | ID |
post_name | INDEX | post_name |
type_status_date | INDEX | post_type post_status post_date ID |
post_parent | INDEX | post_parent |
post_author | INDEX | post_author |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
term_id | bigint(20) unsigned | PRI | auto_increment | ||
name | varchar(200) | IND | |||
slug | varchar(200) | UNI | |||
term_group | bigint(10) | 0 |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | term_id |
slug | UNIQUE | slug |
name | INDEX | name |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
meta_id | bigint(20) unsigned | PRI | auto_increment | ||
term_id | bigint(20) unsigned | IND | 0 | ||
meta_key | varchar(255) | YES | IND | NULL | |
meta_value | longtext | YES | NULL |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | meta_id |
term_id | INDEX | term_id |
meta_key | INDEX | meta_key |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
object_id | bigint(20) unsigned | PRI Pt1 | 0 | ||
term_taxonomy_id | bigint(20) unsigned | PRI Pt2 & IND | 0 | ||
term_order | int(11) | 0 |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | object_id term_taxonomy_id |
term_taxonomy_id | INDEX | term_taxonomy_id |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
term_taxonomy_id | bigint(20) unsigned | PRI | auto_increment | ||
term_id | bigint(20) unsigned | UNI Pt1 | 0 | ||
taxonomy | varchar(32) | UNI Pt2 & IND | |||
description | longtext | ||||
parent | bigint(20) unsigned | 0 | |||
count | bigint(20) | 0 |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | term_taxonomy_id |
term_id_taxonomy | UNIQUE | term_id taxonomy |
taxonomy | INDEX | taxonomy |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
umeta_id | bigint(20) unsigned | PRI | auto_increment | ||
user_id | bigint(20) unsigned | IND | 0 | ||
meta_key | varchar(255) | Yes | IND | NULL | |
meta_value | longtext | Yes | NULL |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | umeta_id |
user_id | INDEX | user_id |
meta_key | INDEX | meta_key |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
ID | bigint(20) unsigned | PRI | auto_increment | ||
user_login | varchar(60) | IND | |||
user_pass | varchar(64) | ||||
user_nicename | varchar(50) | IND | |||
user_email | varchar(100) | ||||
user_url | varchar(100) | ||||
user_registered | datetime | 0000-00-00 00:00:00 | |||
user_activation_key | varchar(60) | ||||
user_status | int(11) | 0 | |||
display_name | varchar(250) |
ОБРАТИТЕ ВНИМАНИЕ:
NOTE: Включение функции мультисайтов в WordPress добавляет два поля в таблицу wp_users: spam и deleted. См. Мультисайтовую версию.
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | ID |
user_login_key | INDEX | user_login |
user_nicename | INDEX | user_nicename |
Этот раздел представляет собой обзор таблиц, созданных для использования с функциональностью мультисайтов в WordPress. Эти таблицы создаются с помощью процессов в разделе
Administration > Tools > Network.
Эти таблицы считаются многосайтовыми глобальными таблицами.
Мультисайтовые таблицы WordPress 3.0 | ||
---|---|---|
Имя таблицы | Описание | Соответствующие области пользовательского интерфейса WordPress |
wp_blogs | Каждый созданный сайт хранятся в таблице wp_blogs. | |
wp_blog_versions | Состояние текущей версии базы данных каждого сайта обслуживается в таблице wp_blogs_versions и обновляется для каждого сайта при его обновлении. | |
wp_registration_log | Когда администратор создаёт новый сайт, в таблице wp_registration_log создаются соответствующие записи. | |
wp_signups | Эта таблица содержит пользователя, который зарегистрировался на сайте через процесс регистрации. Регистрация пользователей включается в Administration > Super Admin > Options. | |
wp_site | Таблица wp_site содержит адрес главного сайта. | |
wp_sitemeta | У каждого сайта есть информация, называемая данные сайта и она хранится в таблице wp_sitemeta. Также в этой таблице хранится различная информация, связанная с настройкой, включая администратора сайта. | |
wp_users | Список всех пользователей обслуживается в таблице wp_users. Мультисайтовость добавляет два поля, которых нет в обычной версии. |
|
wp_usermeta | Данная таблица не пересоздаётся для мультисайтовости, но мета данные пользователей для каждого сайта, хранятся в wp_usermeta. |
|
Site Specific Tables | Данные основного сайта хранятся в существующих ненумерованных таблицах. Данные дополнительных сайтов хранятся в новых пронумерованных таблицах. |
|
Ниже описаны таблицы и поля, созданные во время сетевой установки. Обратите внимание, что при создании сетевой установки, создается глобальный набор таблиц, а специфичные для каждого сайта таблицы создаются при создании каждого сайта.
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
blog_id | bigint(20) | PRI | auto_increment | ||
site_id | bigint(20) | 0 | |||
domain | varchar(200) | IND Pt1 | |||
path | varchar(100) | IND Pt2 | |||
registered | datetime | 0000-00-00 00:00:00 | |||
last_updated | datetime | 0000-00-00 00:00:00 | |||
public | tinyint(2) | 1 | |||
archived | tinyint(2) | 0 | |||
mature | tinyint(2) | 0 | |||
spam | tinyint(2) | 0 | |||
deleted | tinyint(2) | 0 | |||
lang_id | int(11) | IND | 0 |
ПРИМЕЧАНИЕ: blog_id идентифицирует сайт, а site_id идентифицирует сеть. Это след прошлого, когда 'сайт' назывался 'блог' в WordPress 2.x. Если вы добавите свой сайт в сеть, новая запись будет добавлена в таблицу wp_blogs с увеличенным значением blog_id и тем же самым site_id.
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | blog_id |
domain | INDEX | domain path |
lang_id | INDEX | lang_id |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
blog_id | bigint(20) | PRI | 0 | ||
db_version | varchar(20) | IND | |||
last_updated | datetime | 0000-00-00 00:00:00 |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | blog_id |
db_version | INDEX | db_version |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
ID | bigint(20) | PRI | auto_increment | ||
varchar(255) | |||||
IP | varchar(30) | IND | |||
blog_id | bigint(20) | 0 | |||
date_registered | datetime | 0000-00-00 00:00:00 |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | ID |
IP | INDEX | IP |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
signup_id | bigint(20) | PRI | auto_increment | ||
domain | varchar(200) | IND Pt1 | |||
path | varchar(100) | IND Pt2 | |||
title | longtext | ||||
user_login | varchar(60) | IND Pt1 | |||
user_email | varchar(100) | IND & IND Pt2 | |||
registered | datetime | 0000-00-00 00:00:00 | |||
activated | datetime | 0000-00-00 00:00:00 | |||
active | tinyint(1) | ||||
activation_key | varchar(50) | IND | |||
meta | longtext | Yes | NULL |
Имя ключа | Тип | Поле |
---|---|---|
signup_id | PRIMARY | signup_id |
activation_key | INDEX | activation_key |
user_email | INDEX | user_email |
user_login_email | INDEX | user_login user_email |
domain_path | INDEX | domain path |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
id | bigint(20) | PRI | auto_increment | ||
domain | varchar(200) | IND Pt1 | |||
path | varchar(100) | IND Pt2 |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | id |
domain | INDEX | domain path |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
meta_id | bigint(20) | PRI | auto_increment | ||
site_id | bigint(20) | 0 | |||
meta_key | varchar(255) | Yes | IND | NULL | |
meta_value | longtext | Yes | IND | NULL |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | meta_id |
meta_key | INDEX | meta_key |
site_id | INDEX | site_id |
Поле | Тип | Null | Ключ | Умолчание | Дополнительно |
---|---|---|---|---|---|
ID | bigint(20) unsigned | PRI | auto_increment | ||
user_login | varchar(60) | IND | |||
user_pass | varchar(64) | ||||
user_nicename | varchar(50) | IND | |||
user_email | varchar(100) | ||||
user_url | varchar(100) | ||||
user_registered | datetime | 0000-00-00 00:00:00 | |||
user_activation_key | varchar(60) | ||||
user_status | int(11) | 0 | |||
display_name | varchar(250) | ||||
spam | tinyint(2) | 0 | |||
deleted | tinyint(2) | 0 |
Имя ключа | Тип | Поле |
---|---|---|
PRIMARY | PRIMARY | ID |
user_login_key | INDEX | user_login |
user_nicename | INDEX | user_nicename |
Когда создается новый дополнительный сайт, создаются таблицы, специфичные для сайта, аналогичные стандартным таблицам выше. Каждый набор таблиц для сайта создается с идентификатором сайта (blog_id
) как частью имени таблицы. Это таблицы, которые должны быть созданы для идентификатора сайта 2 и table_prefix wp_:
Данные главного сайта хранятся в ненумерованных таблицах.
Структура базы данных определяется в wp-admin/includes/schema.php
comment_approved
.blog_id
.post_content_filtered
from text to longtext.comment_parent
.post_author
.spam
field and the deleted
field to users table.option_name
UNIQUE.comment_post_ID
column from int(11)
to bigint(20) unsigned
.link_category
column. Changed link_owner
column from int(11)
to bigint(20) unsigned
.post_category
column.taxonomy
.unsigned
attribute to various bigint(20)
fields.name
field varchar(55)
-> varchar(200)
.name
to the term table.post_parent
to the posts table.enum
type fields -> varchar(20)
:
comment_approved
fieldlink_visible
autoload
post_status
, comment_status
, ping_status
comment_approved_date_gmt
and comment_date_gmt
to the comments table.term_order
field to the term_relationships tablecategories
, link2cat
and post2cat
tables.option_can_override
, option_type
, option_width
, option_height
, option_description
, and option_admin_level
)'pending'
for post_status
field to the posts table.linkcategories
table. linkcategories data were marged to the categories
table, and IDs were reseted.post_type
field to the posts table (in 2.0.x, post_status
= 'static'
for Pages)'future'
for post_status
field to the posts table, instead of NOW()
in 2.0.x.