Содержание
База данных WordPress
Приветствую своих читателей в новом году, пора приступать к работе! Рано или поздно вебмастеру пригодятся технические знания об устройстве WordPress, из каких файлов состоит тема и для каких функций они предназначены, как организована структура базы данных.
Сегодня моя новая статья будет посвящена базе данных MySQL, которая является неотъемлемой частью платформы WordPress. Поскольку WordPress самостоятельно взаимодействует с базой данных, то обычные пользователи не должны сильно волноваться о её структуре. Однако, вам может быть интересно узнать, как WordPress хранит свои данные и зависимости, если пишете свой плагин.
Мысль написать статью на эту тему меня посетила отнюдь не случайно. В один прекрасный день на одной из страниц был оставлен полезный развёрнутый комментарий, не имеющий абсолютно никакого отношения к её содержанию, но запись с подходящей для обсуждения темой на блоге имелась.
Внимание! Любое изменение базы данных может привести к необратимым последствиям и нарушению работы сайта. Все действия выполняются на свой страх и риск. Обязательно делайте резервное копирование!
Поэтому я решил исправить ситуацию и перенести комментарий на другую релевантную страницу 😉 В базе данных в таблице wp_comments
я нашёл этот комментарий и отредактировал строку таблицы, изменив значение поля comment_post_ID
. Просто сменил ID записи к которой был отправлен комментарий на ID другой записи. После сохранения изменений в базе данных комментарий был успешно перенесён на другую страницу.
Таблицы, из которых состоит база данных WordPress
Сразу после установки WordPress база данных содержит таблицы, имена которых начинаются с префикса. При установке CMS появляется возможность задать свой префикс — это рекомендуется в целях повышения безопасности сайта.
Стандартный префикс wp_
при установке WordPress допускается не изменять. Если планируете создавать несколько сайтов с использованием одной общей базой данных, то обязательно для каждой установки задавайте разный префикс для таблиц 💡
- wp_commentmeta
- wp_comments
- wp_links
- wp_options
- wp_postmeta
- wp_posts
- wp_termmeta
- wp_terms
- wp_term_relationships
- wp_term_taxonomy
- wp_usermeta
- wp_users
Обратите внимание, если ваши таблицы не совпадают с моим списком, их больше или, наоборот, меньше, то причиной может оказаться несколько вариантов:
- Установлена другая версия WordPress. На момент последнего редактирования текущей статьи актуальной версией является 5.0. Настоятельно рекомендую своевременно обновлять CMS.
- Установлены плагины, которые создали в базе данных свои таблицы. Плагины также меняют содержимое таблиц, добавляя новые поля, строки и т.д.
- В процессе установки WordPress был изменён стандартный префикс таблиц.
Итак, после чистой установки WordPress база данных будет содержать 12 таблиц. Давайте с ними познакомимся и узнаем для чего они предназначены, какую хранят информацию.
Описание и предназначение таблиц базы данных
Работая с базой данных в целях администрирования я использую панель phpMyAdmin. На вашем хостинге или сервере может быть установлено другое программное обеспечение.
Таблица wp_commentmeta
Каждый комментарий, оставленный на сайте, содержит метаданные — эта информация хранится в этой таблице. Например, если установлен плагин Akismet для защиты от спама, то он будет записывать в неё свои данные: одобрен комментарий или нет, имеется ли пометка о спаме.
Таблица wp_comments
Название этой таблицы говорит само за себя — здесь хранятся оставленные к записям комментарии. Именно в этой таблице я переносил комментарий с одной страницы на другую, о чём писал в начале статьи.
Помимо текста комментария в таблице хранится дополнительная информация, включая имя, электронную почту и сайт автора, IP-адрес с которого бы отправлен комментарий, дату, время и многое другое.
Таблица wp_links
Эта таблица раньше хранила ссылки блогролла на Кодекс, wordpress.org и другие ресурсы. На блоге у меня были удалены все ссылки из консоли, поэтому на скриншоте ниже есть надпись «Ссылок не найдено», а таблица пуста.
Теперь эта функция устарела, но при необходимости её можно включить с помощью плагина Links Manager.
Таблица wp_options
Хранит основные настройки WordPress, в том числе параметры, доступные для изменения в консоли администрирования. Кстати, таблица wp_options очень интересна для изучения, но зачастую после установки и последующего удаления плагинов содержит лишние строки. У меня есть отличное руководство по чистке базы данных от «мусора».
Таблица wp_postmeta
Хранит огромное количество данных о записях и страницах сайта: информацию о прикреплённых файлах (изображения, документы, видео), данные заполняемых полей при создании или редактировании записей. Некоторые плагины могут добавлять свою собственную информацию в эту таблицу. Например, плагин All in One SEO Pack хранит здесь Title, Description и Keywords.
Таблица wp_posts
Самое ценное — контент — сосредоточено в таблице wp_posts. В ней хранятся сведения об авторе статьи, дата и время публикации, дата и время последнего изменения, непосредственно тексты, статус записи (опубликовано, черновик, на утверждении) и ещё очень много информации.
Таблица wp_termmeta
Каждый термин (категории, метки и термины пользовательских таксономий) содержит информацию, называемую метаданными, и хранится в этой таблице. Скриншот не прилагаю, так как у меня эта таблица оказалась пустой. Метки и пользовательские таксономии при этом не использую.
Таблица wp_terms
Таблица содержит категории, метки и термины пользовательских таксономий.
Таблица wp_term_relationships
Сообщения связаны с категориями и метками из таблицы wp_terms и эта связь здесь поддерживается. Ассоциация ссылок на соответствующие категории также хранится в этой таблице.
Таблица wp_term_taxonomy
В этой таблице описаны таксономии (категории, теги) для записей в таблице wp_terms. Устанавливается очередность и вложенность категорий, которые могут быть родительскими и дочерними, вот таблица wp_term_taxonomy и отслеживает иерархию между ними.
Таблица wp_usermeta
Эта таблица хранит метаданные зарегистрированных пользователей, их персональные настройки и данные профиля, такие как цветовая схема, контактные данные, биография, никнейм и другие.
Таблица wp_users
И, наконец, на очереди последняя таблица — wp_users. Она содержит список зарегистрированных пользователей, их логин и пароль в зашифрованном виде, e-mail адрес, дату регистрации и другие сведения.
Таким вот образом организована структура базы данных WordPress, все таблицы взаимосвязаны между собой, содержат сериализированные массивы, поэтому изменение данных вручную может привести к сбою, помните об этом и соблюдайте осторожность при редактировании.
Структура базы данных WordPress — Hoow
WordPress по умолчанию создает несколько основных таблиц в базе данных во время установки. Этих таблиц достаточно для правильной работы WordPress. Однако плагины будут добавлять дополнительные таблицы для улучшения функций. Например, плагин WooCommerce добавит в базу данных более 25 таблиц. К сожалению, большинство плагинов, включая WooCommerce, не удаляют таблицы базы данных при удалении плагина. Это может создать путаницу, когда вы заглянете в базу данных об основной таблице и таблицах, созданных плагинами. Вот детали структуры базы данных WordPress, объясняющие функцию каждой основной таблицы.
Структура базы данных WordPress
База данных WordPress будет иметь следующие 12 таблиц как часть установки по умолчанию:
Стол | Цель | Раздел панели администратора |
---|---|---|
wp_posts | Хранит контент | Записи / страницы> Добавить |
wp_postmeta | Хранит метаданные постов | Записи / Страницы> Добавить |
wp_comments | Сохраняйте комментарии пользователей | Комментарии |
wp_commentmeta | Сохранить метаданные комментария | Комментарии |
wp_terms | Категории магазинов и теги | Сообщения> Категории Сообщения> Теги |
wp_termmeta | Мета-данные для категорий и тегов | Сообщения> Категории Сообщения> Теги |
wp_term_relationships | Срок отношений с должностями | Сообщения> Категории Сообщения> Теги |
wp_term_taxonomy | Дополнительные сведения в таблице условий | |
wp_users | Детали пользователя | Пользователи> Добавить новый |
wp_usermeta | Мета-данные пользователя | Пользователи> Добавить новый |
wp_links | Детали ссылки | Не используется |
wp_options | Настройки сайта | Раздел настроек |
Приведенный выше список таблиц предназначен для установки на одном сайте, а для нескольких сайтов у вас будут дополнительные таблицы, такие как wp_blogs, wp_blogmeta, wp_sites, wp_sitemeta, wp_blog_versions, wp_registration_log и wp_signups. В этой статье мы сосредоточимся только на установке на одном сайте.
Любые другие таблицы в вашей базе данных создаются плагинами. Помните, WordPress по умолчанию использует «wp_» для префикса таблицы. Однако вы можете найти другой префикс в зависимости от того, который вы использовали во время установки. Softaculous и другие установщики WordPress по щелчку автоматически создают другой префикс при установке WordPress через вашу учетную запись хостинга. Как видите, в приведенном ниже примере нашей демонстрационной установки префиксом таблицы является «wpeg_».
Таблицы базы данных WordPress
Ядро WordPress У команды есть красивая картинка, поясняющая структуру базы данных WordPress. Он четко объясняет структуру и поля, используемые каждой таблицей.
Структура базы данных WordPress
Объяснение таблиц WordPress
Давайте начнем с объяснения таблиц на основе внешнего вида страницы WordPress. Ниже приведен образец страницы этого сайта с текстом, изображением, ссылкой и комментарием. Соответствующая таблица упоминается, откуда вы можете найти данные в бэкэнде.
Статья с соответствующими таблицами WordPress
Кроме того, вы можете найти данные каждой таблицы в соответствующих разделах административной панели WordPress, как указано в приведенной выше таблице.
Таблица сообщений: wp_posts
Многие люди неправильно понимают значение таблицы сообщений, поскольку в ней хранятся только сообщения. WordPress хранит весь ваш текстовый контент в таблице wp_posts независимо от типов сообщений. Это означает, что вы можете найти весь свой контент в таблицах wp_posts для сообщений, страниц и любых других пользовательских типов сообщений. Кроме того, вы также можете найти вложения, редакции и автосохранение в той же таблице.
Сообщение Мета: wp_postmeta
Лучший пример объяснения мета поста — плагин Yoast SEO. При использовании плагина вы можете видеть мета-поле для добавления заголовка SEO, мета-описания и т. Д. Для каждого сообщения. WordPress сохранит все эти данные, связанные с публикациями, в таблице wp_postmeta.
Структура мета-таблицы сообщений
Это одна из самых быстрорастущих версий WordPress из-за неправильного использования плагинов. Ознакомьтесь с нашей статьей о том, как очистить таблицу postmeta в WordPress.
Комментарии: wp_comments
Если вы включили комментарии в WordPress, вы увидите возможность оставлять комментарии под каждой записью или страницей. WordPress сохранит все комментарии пользователей в таблице «wp_comments».
Таблица комментариев также является одной из самых быстрорастущих во многих установках WordPress из-за спам-комментариев. Вы должны использовать Akismet, captcha или любой другой способ модерирования комментариев, чтобы таблица не содержала нежелательных комментариев.
Комментарии Мета: wp_commentmeta
Подобно мета-записи, WordPress будет хранить все мета-комментарии в таблице wp_commentmeta.
Условия: wp_terms
В таблице терминов хранятся категории и теги для сообщений.
Термин Мета: wp_termmeta
Все метаданные термина хранятся в таблице wp_termmeta.
Таксономия: wp_term_taxonomy
Он расширяет детали терминов, хранящихся в таблице wp_terms.
Отношения: wp_term_relationships
В этой таблице хранится отношение категорий и тегов к сообщениям.
Пользователи: wp_users
В этой таблице вы можете найти всех зарегистрированных пользователей вашего сайта. Помните, что в этой таблице не будет комментаторов, которые оставляют комментарии без регистрации. Вы должны найти эти детали в таблице wp_commentmeta.
Пользовательская мета: wp_usermeta
Метаданные, относящиеся к пользователям, хранятся в таблице wp_usermeta.
Ссылки: wp_links
Раньше в WordPress была возможность создавать ссылки, например, для создания новых сообщений. Однако впоследствии это было удалено, и таблица больше не используется. Вы должны увидеть эту таблицу пустой, если ее не использует разработчик темы или плагина.
Параметры: wp_options
В таблице параметров хранятся все настройки сайта, такие как URL-адрес сайта, активные плагины, имя пользователя администратора и т. Д. Разработчики плагинов и тем часто используют таблицу параметров для загрузки настроек. Если таблица параметров создает у вас проблемы, ознакомьтесь с нашей статьей о том, как очистить таблицу wp_options.
Понимание и работа с данными в WordPress. Часть 1. Введение / Хабр
Данная статья является переводом первой статьи Rachel McCollin из цикла о данных в WordPress. В ней по полочкам разложена структура данных, типы контента и их взаимосвязь в WordPress. Будет полезна в первую очередь новичкам, но и профессионалы могут найти для себя что-либо новое.
Замечание от переводчика
В переводе используется терминология согласно
кодексу WordPress
- Post — запись,
- Page — страница,
- Attachment — вложение,
- Revision — редакция,
- Comment — комментарий,
- Taxonomy — таксономия,
- Category — категория
- Tag — метка,
- Term — термин (конкретное значение пользовательской таксономии)
- User — пользователь
- Metadata — метаданные
Исключение составляет лишь термин content. В большинстве случаев используется не перевод «содержимое», а — «контент». Я считаю, данный перевод является более корректным по тексту.
В некоторых случаях в скобках приводится расшифровка на английском для однозначного понимания.
Замечания об ошибках и опечатках прошу сообщать в личку.
Сайт на WordPress состоит из трех основных элементов:
- Сама установка WordPress
- Содержимое каталога wp-content, которое включает темы, плагины и загрузками
- База данных, где хранится контент в виде данных.
Большинство пользователей WordPress никогда не работают с базой данных напрямую. Они могут быть даже не в курсе, что она постоянно работает, чтобы обеспечить работу их сайт. Когда WordPress показывает любую страницу, то он соединяется к базой данных, чтобы показать контент, который добавили авторы на сайт.
В этой серии статей будет детально рассмотрены аспекты базы данных WordPress. Эта серия состоит из девяти частей:
- Вступление (сейчас вы читаете именно его)
- Взаимосвязи между данными
- Типы контента
- Пользовательские данные
- Метаданные
- Таксономии, категории, метки и термины
- Таксономии VS метаданные
- Таблица опций
- Данные WordPress Multisite
В этом статье рассматриваются таблицы базы данных и как они относятся с типами контента. Данные типы контента используются для работы в WordPress и определяют что, как и где должно храниться.
Типы контента в WordPress
Прежде чем разбирать данные хранящиеся в базе WordPress, рассмотрим типы контента. Существуют такие стандартные типы контента:
- Записи (posts)
- Страницы (pages)
- Пользовательские типы записей (custom post types)
- Вложения (attachments)
- Ссылки (links)
- Элементы меню (navigation menu items)
Эти типы контента имеют такие данные:
- Категории (categories)
- Метки (tags)
- Пользовательские таксономии (custom taxonomies and terms)
- Метаданные (post metadata)
Кроме того существует типы контента, хранящиеся в ином виде:
- Виджеты (widgets)
- Опции (options)
- Пользователи (users)
- Сайты для MU WordPress
- Нестандартный контент (hardcoded content), который добавляют некоторые темы/плагины.
- Сторонний контент (third party content) (например RSS)
Все эти типы контента хранятся в таблицах базы данных или в файлах настроек тем/плагинов. Каждый тип может быть представлен как отдельной записью в таблице, так и её частью. Кроме, того они могут быть связаны с данными в других таблицах. Например, данные о записях связаны с данными о пользователях, так что WordPress знает, кто является автором, какой записи.
Структура базы данных WordPress
WordPress использует несколько взаимосвязанных таблиц. Между ними установлены связи один ко многим. Например, к одной странице может быть много комментариев. Приведенная ниже диаграмма взята из
кодекса WordPress
. На ней показаны таблицы и связи между ними:
Большинство таблиц связаны с одной или несколькими другими с помощью одного поля. Это поле будет уникальным идентификатором для каждой записи (пример post_id). Более подробно для каждой таблицы:
Таблица | Данные | Связи с другими таблицами |
---|---|---|
wp_posts | Записи, страницы, вложения, редакции, пользовательские записи | wp_postmeta через post_id wp_term_relationships через post_id |
wp_postmeta | Метаданные записей, страниц и т.д. | wp_posts через post_id |
wp_comments | Комментарии | wp_posts через post_id |
wp_commentmeta | Метаданные комментариев | wp_comments через comment_id |
wp_term_relationships | Связи между таксономиями и записями, страницами и т.д. | wp_posts через post_id wp_term_taxonomy через term_taxonomy_id |
wp_term_taxonomy | Таксономии (включая категории и метки) | wp_term_relationships через term_taxonomy_id |
wp_terms | Ваши категории, метки и термины пользовательских таксономий | wp_term_taxonomy через term_id |
wp_links | Ссылки в вашем блоке (как правило, сейчас не используется) | wp_term_relationships через link_id |
wp_users | Пользователи | wp_posts через post_author |
wp_user_meta | Метаданные для каждого пользователя | wp_users через user_id |
wp_options | Опции и настройки сайта (устанавливаются в админке на странице настроек и в темах/плагинах) | Отсутвуют |
Стоит отметить несколько вещей:
- Таблицы базы данных по умолчанию имеют префикс wp_. Вы можете его изменить (например, при установке).
- Таблица wp_posts является самой важно. Именно в ней храниться большинство данных.
- Только одна таблица не связанна с другими — таблица wp_options. В ней хранятся данные о сайте и настройках WordPress, которые не имеют отношения к записям или пользователям.
- Две таблицы используются для хранения данных о таксономии. Об это будет отдельная статья.
- В таблицах wp_users и wp_comments данные не связаны. В настройках WordPress можно указать, что только зарегистрированные пользователи могут оставить комментарий. Не смотря на это, WordPress не хранит связи о комментариях и пользователе, который их отправил.
- WordPress MU иметь некоторые дополнительные таблица. Их рассмотрение выходит за рамки данной статьи.
Связь контента и таблиц базы данных
Ознакомившись с типами контента в WordPress и таблиц базы данных, используемых для их хранения, можно провести между ними соотвествие. В приведенном ниже перечне показано, какие таблицы базы данных используется для хранения какого типа контента.
Тип контента | Таблица |
---|---|
Записи (posts) | wp_posts |
Страницы (pages) | wp_posts |
Пользовательские типы записей (custom post types) | wp_posts |
Вложения (attachments) | wp_posts |
Ссылки (links) | wp_links |
Элементы меню (navigation menu items) | wp_posts |
Категории (categories) | wp_terms |
Метки (tags) | wp_terms |
Пользовательские таксономии (custom taxonomies) | wp_term_taxonomy |
Термины пользовательских таксономий (custom terms) | wp_terms |
Метаданные (post metadata) | wp_post_meta |
Виджеты (widgets) | wp_options |
Опции (options) | wp_options |
Пользователи (users) | wp_users |
Нестандартный контент (hardcoded content) | wp_posts (если добавлен к записям) wp_options (если добавлен к виджетам) Файлы тем/плагинов |
Стороний контент (third party content) | wp_posts (если добавлен к записям) wp_options (если добавлен к виджетам) Файлы тем/плагинов |
Легко заметить, что не все таблицы используются в перечне. Так происходит потому, что некоторые из них используются для хранения метаданных. Другие используются для хранения связей. Оба варианта будут рассмотрены в последующих статьях.
Заключение
Надеюсь, что теперь вы лучшее понимаете, как и где WordPress хранит различные типы данных, как использует базу данных. Более подробно элементы этого процесса будут рассмотрены в последующих статьях. Так в следующей статье будут рассмотрены взаимосвязи между данными. А так же мы остановимся более подробно на том, как конкретные таблицы связаны и как некоторые из них используются исключительно для хранения данных об взаимосвязях.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Стоит ли переводить последующие статьи
10.74%
Нет (не интересно или прочту на английском)
45
7.88%
Мне без разницы
33
Проголосовали 419 пользователей.
Воздержались 48 пользователей.
Шаг 3. Структура таблиц в БД WordPress — Толмачев Павел Владимирович
Продолжаю рассказывать про базу данных CMS WordPress. Информации про БД WordPress много, самому интересно – нашел несколько интересных ссылок, самую полезную я приведу в статье. И хорошую иллюстрацию со связями между таблиц БД нашел, на официальном сайте WordPress.
Некоторое время назад опубликовал статью с перечнем таблиц WordPress. Сегодня будет дополнительная информация про эти таблицы и про связи между ними.
Сама структура данных WordPress выглядит следующим образом:
Взято с официального сайта.
Здесь хорошо показаны связи между таблицами. Почему-то в PhpMyAdmin эти связи (в дизайнере) не отобразились. Так что официальная картинка пришлась как нельзя кстати.
№ | Таблица | Связь |
1. | wp_posts | wp_postmeta -> post_id wp_term_relationships -> post_id |
2. | wp_postmeta | wp_posts -> post_id |
3. | wp_comments | wp_posts -> post_id |
4. | wp_commentmeta | wp_comments -> comment_id |
5. | wp_term_relationships | wp_posts -> post_id wp_term_taxonomy -> term_taxonomy_id |
6. | wp_term_taxonomy | wp_term_relationships -> term_taxonomy_id |
7. | wp_terms | wp_term_taxonomy -> term_id |
8. | wp_termmeta | wp_terms -> term_id |
9. | wp_users | wp_posts -> post_author |
10. | wp_usermeta | wp_users -> user_id |
11. | wp_options | Нет связей |
12. | wp_links | Не связей |
В блоге, который уже давно живет – нет ни одной записи в таблице wp_links (я уже говорил, что эта таблице сейчас не используется).
-
Шаг 3. Структура таблиц в БД WordPress
https://ptolmachev.ru/wp-content/uploads/2016/03/WordPress-150×150.jpg
Продолжаю рассказывать про базу данных CMS WordPress. Информации про БД WordPress много, самому интересно – нашел несколько интересных ссылок, самую полезную я приведу в статье. Читать далее - ВКонтакте
- Одноклассники
- Mail.ru
- Google+
- Livejournal
Анализ структуры базы данных WordPress
Недавно у меня была возможность связаться с wordPress, и я столкнулся с множеством трудностей при изменении некоторых источников данных и структуры базы данных, я записал это и поделился с вами.
Позвольте мне сначала поговорить об этом, я использую версию 2.5. Но лично считаю, что анализ структуры данных на самом деле похож.
Структура таблицы данных:
-
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. Обратите внимание, что упомянутая здесь «статья» цитируется, потому что помимо обычных статей в этой таблице хранится некоторая информация о вложениях и страницах (страницах). Поле post_type в таблице используется для указания типа. Также следует отметить, что некоторые поля в этой таблице относятся к определенному типу post_type. Например, поле menu_order уникально для «page» и используется для определения порядка «страниц». post_mime_type предназначен для вложений, чтобы указать тип вложения.
wp_postmeta
Атрибуты каждой статьи не могут быть полностью отмечены только этими полями в таблице wp_posts.Часто есть некоторые атрибуты, которые варьируются от человека к человеку: настроение, местоположение и т. Д. При написании этой статьи. Имена и типы значений этих атрибутов неизвестны, поэтому WordPress использует метаинформацию (мета) для их представления. Эта таблица очень простая, всего с четырьмя полями: meta_id, post_id, meta_key, meta_value. post_id — это идентификатор соответствующего сообщения. Мы заметили, что meta_value имеет тип longtext, который используется здесь только для хранения значения.Что касается точного типа значения, программисты должны заботиться о нем.
При написании статьи мы можем обнаружить, что есть опция для настраиваемых полей под полем редактирования, где мы можем добавить метаинформацию публикации.
wp_comments
комментарий пользователя. Помимо содержания комментария, также записываются имя пользователя, адрес электронной почты, URL, тип браузера и другая информация. Еще два важных поля — это comment_post_ID и comment_approved. Первое используется для указания того, к какому посту принадлежит комментарий, а второе используется для записи статуса обзора. Еще одна интересная вещь — это поле commnet_agent, которое мы можем использовать для подсчета типов браузеров пользователей.
wp_users
Таблица учетных записей пользователей. Храните имя пользователя, пароль и некоторую базовую информацию о пользователе.
wp_usermeta
Подобно приведенному выше wp_postmeta, он хранит некоторую пользовательскую информацию, которая варьируется от человека к человеку. (Например, QQ? ICQ?)
wp_options
Используется для записи некоторых настроек и опций WordPress. Есть поле blog_id, которое следует использовать в версии MU для отметки разных блогов.
wp_links
Используется для хранения ссылок в Blogroll.
wp_terms
wp_term_relationships
wp_term_taxonomy
Эти три таблицы представляют собой наиболее сложную взаимосвязь. В WordPress 2.2 и предыдущих версиях эти три таблицы недоступны. Вместо них используются wp_categories, wp_post2cat и wp_link2cat. Сравнивая эти две версии, мы можем обнаружить, что: в версии 2.2 и предыдущих версиях связь между публикацией и ссылкой и категорией записывается в отдельных таблицах. В версии 2.3 была добавлена поддержка тегов. WordPress абстрагировал классификацию сообщений, ссылок и тегов в единую форму и использовал три новые таблицы для записи этой информации.
wp_terms
Запишите классификацию, классификацию ссылок и некоторую краткую информацию о тегах, включая имена и сокращения.
wp_term_taxonomy
Это дополнение к относительной информации в wp_terms, включая категорию (категория, link_category, тег), подробное описание, родительскую категорию и количество принадлежащих статей (ссылок).
wp_term_relationships
Таблица отношений, многие-ко-многим, object_id связаны с различными объектами, такими как ID в wp_posts (link_id в wp_links) и т. Д., Term_taxonomy_id связан с term_taxonomy_id в wp_term_taxonomy.
Есть некоторые поля, для которых я не знаю, например:
term_order в wp_term_relationships;
Группа term_group в wp_terms, некоторые функции значений в wp_option и т. Д. Будут подробно объяснены в процессе дальнейшего обучения. Если вы знаете, вы также можете сказать мне.
Сложнее понять термин, а именноwp_terms
、wp_term_relationships
、wp_term_taxonomy
. В системе WordPress наши общие классификации включают в себя классификацию статей, классификацию ссылок и фактически TAG, который также является специальным методом классификации.Мы даже можем создать наш собственный метод классификации. WordPress записывает все классификации, методы классификации и соответствующие структуры в эти три таблицы.wp_terms
Имя и основная информация каждой категории записываются. Например, этот сайт разделен на «Разработка WordPress», «Плагин WPCEO» и т. Д. Категория здесь относится к категории в широком смысле, поэтому каждый ТЕГ также является «категорией».wp_term_taxonomy
В нем записывается метод классификации, к которой принадлежит каждая категория, например «Разработка WordPress» и «Плагин WPCEO» — это классификации статей (category
), категории «Мои друзья» и «Мои коллеги», где размещены дружеские ссылки, относятся к категории дружеских ссылок (link_category
)。wp_term_relationships
Записывается метод классификации, соответствующий каждой статье (или ссылке).
К счастью, что касается использования термина, использование связанных функций в WordPress все еще относительно ясно, поэтому нам не нужно беспокоиться о его структуре.
База данных WordPress сайта | IT-блог о веб-технологиях, серверах, протоколах, базах данных, СУБД, SQL, компьютерных сетях, языках программирования и создание сайтов.
Здравствуйте, уважаемые посетители моего скромного блога для начинающих вебразработчиков и web мастеров ZametkiNaPolyah.ru. Продолжаем разговор о создании блога на WordPress. И сегодня мы поговорим о базе данных WordPress. Разберемся с сервером баз данных, который используется движком WordPress, какой тип движка использует база данных WordPress. Поговорим немного о таблицах базы данных WordPress, и на конец, мы рассмотрим структуру каждой таблицы.
База данных WordPress сайта
Для чего необходимо знать архитектуру базы данных этой системы управления сайтами? Как минимум, для общего развития. Большинству пользователей WordPress эта информация может показаться излишней и не нужной: простые посетители сайтов вряд ли заинтересуются этим вопросам, многие вебмастера, которые используют WordPress, не представляют себе то, как он работает изнутри, поэтому ставят кучу ненужных плагинов и расширений. Начинающим веб-разработчикам, использующим WordPress, как платформу для создания сайтов и блогов, информация из этого поста может показаться очень полезной и нужной.
Особенности работы базы данных WordPress
Содержание статьи:
И так, для начала следует сказать, что оригинал статьи на английском языке вы сможете найти на сайте кодекса WordPress. Ссылку была дана в статье, в которой писал про создание WordPress шаблона. Сразу скажу, что перевод статьи о базе данных WordPress не дословный, а вольный. Приступим.
Любому начинающему разработчику WordPress необходимо ознакомиться с двумя вещами: с технической документацией WordPress и с особенностями архитектуры базы данных, как минимум, для того чтобы уметь создавать сложные WordPress шаблоны и простенькие плагины, сегодня мы познакомимся с архитектурой базы данных сайта на WordPress.
Первое, что следует сказать: в качестве системы управления базами данных WordPress использует MySQL сервер версии 5.0.15 и выше (внимание: эта информация актуальна на момент написания публикации). Как я уже говорил: конечному пользователю информация о БД WordPress навряд ли когда-то пригодится, многим разработчикам для создания тем и плагинов WordPress будет достаточно набора функций WordPress для работы с базами данных, но иногда бывают ситуации, когда API WordPress недостаточно.
То есть, иногда возникает потребность обращаться к базам данных напрямую. Поэтому требуется информация о том, как WordPress хранит свои данные и какие есть зависимости и ограничения между таблицами базы данных WordPress. Чтобы обратиться к базам данных WordPress напрямую, следует использовать WPDB класс, но об этом не здесь. Перейдем к рассмотрению схемы и структуры базы данных WordPress.
Структура базы данных WordPress сайта
Ниже вы можете увидеть структуру базы данных WordPress, а также отношения и зависимости между таблицами базы данных. Обратите внимание: такую архитектуру база данных WordPress имеет при начальной установки без плагинов и расширений. База данных WordPress насчитывает 11 таблиц и 9 связей между таблицами: шесть не идентифицирующих и три идентифицирующих.
Архитектура базы данных WordPress
Обратите внимание: при стандартной установки WordPress целостность данных в базе данных обеспечивается не полностью, например, между записями вашего блога и комментариями. Если вы создаете сложный шаблон, плагин или расширение WordPress, то нужно самостоятельно заботиться о поддержании целостности данных в базе данных. Также не забывайте делать резервные копии базы данных WordPress, перед тем, как попытаетесь вносить изменение вручную.
Таблицы WordPress, откуда брать данные
Далее мы кратко рассмотрим все таблицы базы данных WordPress, обратите внимание: эта информация актуальна только для WordPress без расширений и плагинов, так как некоторые модули WordPress способных изменять, как архитектуру базы данных, так и содержимое некоторых таблиц.
Имя таблицы WP | Содержимое таблицы WP | Пользовательский интерфейс |
---|---|---|
wp_commentmeta | Характеристики каждого комментария хранятся в таблице wp_commentmeta | Админка WP -> Комментарии |
wp_comments | WordPress комментарии хранятся в таблице wp_comments | Админка WP ->Комментарии |
wp_links | В таблице wp_links хранятся данные о ссылках WordPress | Админка WP -> Ссылки -> Добавить новую Админка WP -> Ссылки -> Ссылки |
wp_options | Настройки WordPress хранятся в таблице wp_options | Админка WP -> Настройки -> Общие Админка WP -> Настройки -> Написание Админка WP -> Настройки -> Чтение Админка WP -> Настройки -> Обсуждение Админка WP -> Настройки -> Приватность Админка WP -> Настройки -> Постоянные ссылки Админка WP -> Настройки -> Виджеты |
wp_postmeta | Характеристики каждой WordPress статьи находятся в таблице wp_postmeta. Некоторые плагины могут добавлять сюда собственную информацию | Админка WP -> Сообщения -> Добавить новое Админка WP -> Страницы -> Добавить новую |
wp_posts | В таблице wp_posts хранится вся основная информация сайта: навигационное меню, тексты статей и страниц, и пр. | Админка WP -> Сообщения Админка WP -> Страницы Админка WP -> Сообщения -> Добавить новое Админка WP -> Страницы -> Добавить новую Админка WP -> Медиа -> Добавить новую Админка WP -> Медиа -> Библиотека Админка WP -> Оформление -> Меню |
wp_terms | Категории для постов, тэгов и ссылок хранятся в этой таблице | Админка WP -> Сообщениия -> Тэги Админка WP -> Сообщениия -> Категории Админка WP -> Ссылки -> Ссылки категорий |
wp_term_relationships | Данная таблица предназначена для хранения ассоциаций в WordPress | Админка WP -> Сообщениия Админка WP -> Страницы -> Добавить новую Админка WP -> Страницы |
wp_term_taxonomy | В этой таблице хранится информация о таксономии WordPress. Меню категорий, ссылок и тэгов. Данные используются для записи в таблицу wp_terms. | |
wp_usermeta | Мета-данные о пользователях WordPress хранятся в таблице wp_usermeta | Админка WP -> Пользователи |
wp_users | Список бользователей WordPress хранится в таблице wp_users | Админка WP -> Пользователи |
Поля WordPress таблиц, идексы, ограничения и связи базы данных WordPress
Приведем подробное описание WordPress таблиц и связей между таблицами WordPress.
Описание таблицы wp_commentmeta базы данных WordPress
//
//
Индексы таблицы wp_commentmeta базы данных WordPress
Описание таблицы wp_comments базы данных WordPress
Индексы таблицы wp_comments базы данных WordPress
Описание таблицы wp_links базы данных WordPress
Индексы таблицы wp_links базы данных WordPress
Описание таблицы wp_options базы данных WordPress
Индексы таблицы wp_options базы данных WordPress
Описание таблицы wp_postmeta базы данных WordPress
Индексы таблицы wp_postmeta базы данных WordPress
Описание таблицы wp_posts базы данных WordPress
Индексы таблицы wp_posts базы данных WordPress
Описание таблицы wp_terms базы данных WordPress
Индексы таблицы wp_terms базы данных WordPress
Описание таблицы wp_terms_relationships базы данных WordPress
Индексы таблицы wp_terms_relationships базы данных WordPress
Описание таблицы wp_term_taxanomy базы данных WordPress
Индексы таблицы wp_term_taxanomy базы данных WordPress
Описание таблицы wp_usermeta базы данных WordPress
Индексы таблицы wp_usermeta базы данных WordPress
Описание таблицы wp_users базы данных WordPress
Индексы таблицы wp_users базы данных WordPress
Что же, на этом можно будет закончить описание архитектуры базы данных WordPress.
Структура базы данных WooCommerce: хранение данных, где что находится — Разработка сайтов
Термин «база данных» широко используется и известен миллионам людей, но доля людей, которые имеют его в своем словарном запасе, не понимая, что он описывает, весьма значительна.
Базы данных сегодня лежат в основе столь многих цифровых сервисов, что их легко полностью упустить из виду, но независимо от того, запускаете ли вы сайт для покупок или бизнес-сервер, понимание их целесообразно независимо от того, несете ли вы прямую ответственность за администрирование. обязанности.
Понимание того, что такое база данных и как она работает, имеет смысл, особенно если у вас есть сайт WooCommerce и вы хотите оптимально использовать все, что может предложить эта платформа. Для этого вот краткий обзор основ базы данных, который поможет вам быстрее освоиться.
Базы данных – основы
По сути, база данных – это система, в которой информация хранится упорядоченным образом, что позволяет добавлять, извлекать и изменять детали по мере необходимости с помощью всеобъемлющей системы управления.
Порядок и эффективность достигаются за счет помещения данных в таблицы со строками и столбцами, позволяющими логически организовать информацию таким образом, чтобы это было просто для понимания пользователями, а также для взаимодействия программного обеспечения.
Язык структурированных запросов (SQL) – не единственный язык программирования в блоке, но на сегодняшний день он является наиболее распространенным в контексте базы данных.
С точки зрения того, чего они могут достичь, ответ многогранен. Независимо от того, храните ли вы данные для веб-сайтов и приложений или храните информацию, такую как файлы мультимедиа, деловые документы и все, что между ними, база данных будет идеальным решением.
Конечно, любую систему, которая играет такую жизненно важную роль в эпоху цифровых технологий, также необходимо контролировать и поддерживать, чтобы гарантировать, что она работает так, как задумано. Производительность может пострадать из-за блокировки и взаимоблокировки, поскольку это происходит, когда несколько процессов пытаются использовать один и тот же ресурс одновременно.
Сохранение целостности данных с помощью этих функций важно, хотя работа администраторов по минимизации повторения таких сбоев в равной степени необходима. Плохо оптимизированная база данных может вызвать множество побочных эффектов, таких как низкая скорость загрузки страниц на веб-сайтах, что, в свою очередь, может привести к более высокому показателю отказов и меньшему количеству конверсий.
Структура базы данных WooCommerce
Теперь, когда у вас есть фундаментальное представление о базах данных, стоит изучить их значение в контексте WooCommerce.
В основном стоит отметить, что способ хранения данных клиентов в WooCommerce не централизован; скорее, эта информация может быть распределена между таблицами, которые либо настроены для самой платформы, либо основаны на тех же решениях, что и все сайты WordPress.
Если вы сами не внесли никаких изменений, WooCommerce будет автоматически связывать данные клиентов с заказами, которые они разместили в вашем магазине. Это применяется независимо от того, создали ли они учетную запись или решили оформить заказ в качестве гостя.
В принципе, все это звучит хорошо, но на практике это означает, что вполне возможно, что несколько копий одной и той же информации о клиенте сохранятся в базе данных вашего сайта, потому что каждый сделанный ими заказ будет по существу дублировать это. Возможно, это не самый эффективный подход, но он имеет то преимущество, что любые изменения деталей записываются отдельно, что удобно, например, в случае изменения адреса доставки.
Аналогичным образом, когда размещаются заказы, учетные записи пользователей WordPress будут созданы и сохранены для клиентов, при этом таблица wp_users хранит такие аспекты, как их адрес электронной почты, а wp_usermeta используется для обработки их деталей доставки.
По своей структуре информации плагин WooCommerce вводит в базу данных целый ряд новых таблиц , каждая из которых специально настроена для предоставления полезных функций операторам сайта. Вот краткий обзор этих настраиваемых таблиц и того, какую функцию они выполняют.
actionscheduler_actions | список действий, которые будет выполнять Планировщик действий |
actionscheduler_claims | |
actionscheduler_groups | |
actionscheduler_logs | действия, выполняемые планировщиком действий |
woocommerce_sessions | в основном содержит корзины пользователей |
woocommerce_api_keys | Хранилище ключей API |
woocommerce_attribute_taxonomies | категории, теги и т. д. |
woocommerce_downloadable_product_permissions | скачивает права доступа |
woocommerce_order_items | позиции, связанные с заказами |
woocommerce_order_itemmeta | метаданные позиций |
woocommerce_tax_rates | перечень налоговых ставок, установленных вручную |
woocommerce_tax_rate_locations | данные о налоговых ставках с учетом местоположения |
woocommerce_shipping_zones | список таможенных зон доставки |
woocommerce_shipping_zone_locations | расположение зон отгрузки |
woocommerce_shipping_zone_methods | способы доставки для каждой зоны |
woocommerce_payment_tokens | платежные жетоны |
woocommerce_payment_tokenmeta | метаданные платежного токена |
woocommerce_log | Журнал событий |
wc_webhooks | вебхуки |
wc_download_log | скачать журнал |
wc_product_meta_lookup | таблица поиска, которая ускоряет поиск продуктов внутри заказов |
wc_tax_rate_classes | налоговые классы |
wc_reserved_stock | запас, который зарезервирован для обеспечения доступности при оформлении заказа |
Продукты и заказы WooCommerce
В приведенной выше таблице мы выделили woocommerce_order_items и woocommerce_order_itemmeta по определенной причине: например, если вам когда-нибудь понадобится манипулировать базой данных WordPress через PHPMyAdmin, вы обязательно будете использовать эти две таблицы, поскольку они содержат все данные заказа WooCommerce.
Проблема в том, что заказы также хранятся в некоторых других таблицах WordPress, как и продукты WooCommerce. Вот краткий обзор задействованных таблиц.
Поиск заказов WooCommerce в базе данных WP
Данные заказа WooCommerce можно найти в следующих таблицах:
- woocommerce_order_itemmeta
- woocommerce_order_items
- комментарии (order_note)
- постмета (shop_order)
- сообщения (идентификатор shop_order)
Поиск продуктов WooCommerce в базе данных WP
Данные о продуктах WooCommerce можно найти в следующих таблицах:
- wc_order_product_lookup (идентификатор продукта или идентификатор продукта_вариации)
- wc_product_meta_lookup (идентификатор продукта или идентификатор продукта_вариации)
- постмета (продукт или вариант_продукта)
- сообщения (идентификатор продукта или идентификатор продукта_вариации)
Когда использовать базу данных WordPress
Первый шаг к эффективному использованию базы данных при запуске сайта электронной коммерции – это знание того, как максимально эффективно использовать запросы для эффективного извлечения данных.
Например, при просмотре заказов вы можете сузить область поиска в соответствии с определенным диапазоном дат, что полезно, если вы хотите оценить эффективность в течение заданного промежутка времени или определить конкретный заказ дальше по строке. Это также применимо к другим переменным, таким как вес продукта .
Точно так же имеет смысл разобраться, как экспортировать данные из WooCommerce, чтобы вы могли анализировать и обрабатывать их в другом месте, возможно, с помощью программного обеспечения для работы с электронными таблицами. Это может быть полезно для самых разных целей, например для подачи налоговой декларации и проведения маркетинговых исследований вашей аудитории.
Руководство для начинающих по схеме и структуре базы данных WordPress
Запущенный более десяти лет назад, WordPress стал самой популярной платформой для создания веб-сайтов в мире. Для установки WordPress и запуска сайта не требуется никаких знаний о базовой структуре. Но бывают случаи, когда вы оказываетесь в ситуации, когда требуются некоторые знания схемы базы данных WordPress. В этой статье мы познакомим вас со структурой базы данных WordPress. Покажем, как хранятся данные за кулисами.
Что такое база данных WordPress?
База данных создается каждый раз, когда вы создаете веб-сайт WordPress. Все, что есть на вашем веб-сайте WordPress, будь то сообщения, пользовательский тип сообщения, страницы, комментарии и даже настройки, хранится в базе данных. Это как склад информации. Все ваши данные организованы так, чтобы их было легко найти. На ум приходит образ типичного склада, состоящего из рядов картонных коробок. Ящики хранятся на полках для хранения.В базе данных WordPress полки называются таблицами.
На новом веб-сайте WordPress по умолчанию 11 таблиц. Каждая таблица может хранить только определенные данные. Например, таблица комментариев wp фиксирует всю информацию, оставленную человеком, комментирующим сообщение, например IP-адрес, ярлык автора комментария и т. Д. Сохранение данных в определенной таблице позволяет быстрее и проще их найти.
В следующем разделе мы проведем вас по каждой таблице WordPress и покажем, какие таблицы отвечают за контент на вашем веб-сайте WordPress.
Таблицы базы данных WordPress
На новом веб-сайте WordPress 11 таблиц. Это:
- wp_posts
- wp_postmeta
- wp_options
- wp_users
- wp_usermeta
- wp_term_taxonomy
- wp_terms
- wp_term_relationships
- wp_links
- wp_comments
- wp_commentmeta
Многие таблицы связаны друг с другом. Один фрагмент данных может быть связан с другими данными, например, сообщение может быть связано с категориями и тегами.Таким образом, таблица, в которой хранятся сообщения блога, будет иметь связь с таблицами, в которых хранятся категории и теги.
Прежде чем мы начнем описывать, что хранятся в таблицах и как они связаны друг с другом, вот графическая структура базы данных WordPress:
Графическое представление таблиц WordPress и их связь друг с другом
База данных является неотъемлемой частью веб-сайта WordPress. Разработчикам и разработчикам веб-сайтов необходимо знать, как устроена база данных и как она работает.Нажмите, чтобы твитнуть
1. wp_posts
Поскольку типы содержимого ваших сообщений и страниц хранятся в этой таблице, это, возможно, самая важная таблица в базе данных WordPress. Типы содержимого включают текст, исправления, пункты меню, мультимедийные вложения и любые настраиваемые элементы.
2. wp_postmeta
Это расширение таблицы wp_ posts. Он хранит дополнительную информацию из сообщений. Некоторые плагины хранят данные в этой таблице. Плагин социальных сетей MashShare хранит в этой таблице количество общих публикаций.
Примечание: В базе данных есть много таких таблиц, которые позволяют ядру WordPress, теме или плагину хранить дополнительную информацию.
3. wp_options
Таблица параметров — это таблица другого типа. Вместо того, чтобы хранить содержимое веб-сайта, он хранит настройки сайта. В этой таблице хранятся конфигурации вашего веб-сайта, такие как заголовок, слоган и часовой пояс. Обычно он также хранит настройки плагинов и тем. В отличие от других таблиц, таблица wp_options на самом деле не имеет отношения ни к одной из других таблиц.
4. wp_users
В таблице wp_users хранится список всех зарегистрированных пользователей вашего сайта WordPress. В результате он сохраняет основную информацию, такую как имя пользователя, пароли WordPress, идентификатор электронной почты, отображаемое имя, время регистрации и т. Д.
5. wp_usermeta
WordPress хранит дополнительную информацию о пользователях в таблице wp_usermeta. Например, фамилия пользователя сохраняется в таблице wp_usermeta вместо таблицы wp_users.
6. wp_terms
В таблице wp_terms хранятся категории как для сообщений, так и для страниц, а также теги для сообщений.Ссылки, относящиеся к категориям, также присутствуют здесь. Таблица wp_terms имеет общие отношения с таблицей wp_term_taxonomy и wp_term_relationships.
7. wp_term_taxonomy
wp_term_taxonomy хранит описания категорий, теги и определенные ссылки, связанные с категориями.
8. wp_term_relationships
Таблица wp_term_relationships помогает поддерживать отношения. Например, в этом посте тот, который вы читаете, связан с несколькими тегами и категорией.Таблица wp_term_relationships помогает поддерживать эту связь.
9. wp_links
Ссылки мощные. Они похожи на рекомендательные письма.
Еще несколько лет назад в моде были блоги. Блогролл — это список внешних ссылок, которые отображаются на боковой панели веб-сайта. Тогда WordPress считал, что владельцы сайтов сделают правильный выбор при переходе по ссылке на другой сайт. Но вместо этого владельцы сайтов начали злоупотреблять списками блогов, и поэтому WordPress удалил эту функцию.
На боковой панели есть раздел Blogroll.
В таблице wp_links хранится информация, относящаяся к спискам блогов.
Поскольку списки блогов больше не используются, странно все еще находить таблицу wp_links. Это в основном для людей, которые используют старые версии WordPress.
10. wp_comments
В этой таблице хранятся как одобренные, так и неутвержденные комментарии, оставленные к вашим сообщениям и страницам. Конкретные данные об авторе, такие как имя автора, адрес электронной почты, тип комментария (будь то простой комментарий, пингбэк или трекбэк), также сохраняются в этой таблице.
Кроме того, важно отметить, что если вы используете стороннюю службу комментариев, такую как Disqus, комментарии не будут храниться в этой таблице, они будут сохранены на собственном сервере системы комментариев.
11. wp_commentmeta
Здесь хранятся дополнительные данные о комментариях, оставленных на вашем веб-сайте, например о том, с какой записью связан комментарий.
Это последняя таблица в базе данных WordPress нового веб-сайта.
Важно отметить, что если вы проверяете базу данных старого веб-сайта, там обязательно должно быть более 11 таблиц.
Чем больше времени вы проводите на веб-сайте, тем больше информации вы добавляете. В результате ваша база данных становится больше. Новые таблицы добавляются в базу данных для поддержки определенных функций на веб-сайте. Например, Gravity Forms создает свою собственную таблицу базы данных WordPress, как только вы устанавливаете ее на свой веб-сайт. Однако не все плагины добавляют таблицы в базу данных. Многие используют уже присутствующих.
База данных WordPress для мультисайтов
В мультисайте WordPress есть несколько веб-сайтов на одной установке WordPress.Но самое интересное то, что в установке будет единая база данных. Конечно, будет больше таблиц и разных типов связей между ними. В следующем разделе мы рассмотрим все изменения, которые появляются в вашей базе данных после того, как вы переместили единственный сайт в мультисайт.
Сразу после настройки мультисайта вы заметите огромную разницу в том, как выглядят таблицы базы данных. Стандартная база данных WordPress имеет 11 таблиц, и все таблицы хранили контент одного сайта.Теперь, когда у вас есть множество сайтов WordPress (обычно называемых дочерними сайтами), количество таблиц увеличится.
Мультисайтовые таблицы сильно отличаются от таблиц, представленных на обычном веб-сайте WordPress. Давайте посмотрим на таблицы, созданные в многосайтовой сети:
Многосайтовые таблицы WordPress
- wp_site: Таблица содержит информацию о сети, такую как идентификаторы, присвоенные каждому дочернему сайту, путь к сайту и т. Д.
- wp_sitemeta: Этот файл содержит дополнительную информацию о сети, такую как имя сайта, адрес электронной почты администратора, идентификатор пользователя администратора и т. Д.
- wp_blogs: В этой таблице хранится каждый дочерний сайт. Здесь хранится вся информация, связанная с подсайтами, такая как время и дата, когда блог был зарегистрирован или последний раз обновлялся, если блог является общедоступным или заархивированным и т. Д.
- wp_blog_versions: В таблице записана версия дочерних сайтов WordPress.Таким образом, когда вы обновляете версию WordPress, он знает, какие сайты нуждаются в обновлении, а какие нет.
- wp_signups: Таблица wp_signups хранит информацию о зарегистрированных пользователях мультисайта. Но в многосайтовой сети у вас есть возможность отключить регистрацию новых пользователей. Если регистрация отключена, вы не увидите никаких данных в этой таблице.
- wp_registration_log: В этой таблице хранится информация о пользователе с правами администратора, который создает новый дочерний сайт.
Заключение
База данных является неотъемлемой частью веб-сайта WordPress. Потому что в нем хранится вся информация, необходимая для работы веб-сайта. Разработчикам плагинов или WordPress необходимо знать, как работает база данных. Но мы считаем, что любой пользователь WordPress должен знать основы базы данных, поскольку она является неотъемлемой частью их веб-сайта.
Вы можете посетить базу данных и проверить таблицы, войдя в свою учетную запись хостинга WordPress и выбрав phpMyAdmin в cPanel.Но перед этим рекомендуем сделать резервную копию. Это потому, что посещение базы данных рискованно, и малейшая ошибка может вывести из строя ваш сайт. Если у вас есть резервные копии WordPress, вам не о чем беспокоиться. Вы можете создать резервную копию базы данных вручную, но это трудоемкое занятие. Лучше всего использовать плагин. Для получения дополнительных руководств по WordPress следите за нашим блогом.
Посетите свою базу данных, не беспокоясь,
Попробуйте плагин резервного копирования BlogVault прямо сейчас!
Структура базы данных WordPress • WP STAGING
WordPress и почти все плагины хранят свои настройки в специальном месте на вашем сервере, которое называется базой данных.Данные, хранящиеся в базе данных, организованы в так называемые «таблицы».
Представьте себе что-то вроде листа Excel с одной строкой заголовка и значениями в строке ниже.
Например, здесь вы можете увидеть небольшой фрагмент таблицы wp_options
:
Давайте поговорим об этих таблицах, чтобы понять, почему важно знать, какая таблица отвечает за контент на сайте WordPress.
Понимание структуры таблицы поможет вам понять, какую таблицу нужно включить или исключить, если вы планируете синхронизировать или перемещать данные с промежуточного сайта на рабочий сайт или наоборот с помощью WP Staging.Это также полезно, если вы планируете обновить тестовый сайт.
Основные таблицы WordPress:
Другие таблицы в базе данных WordPress создаются другими плагинами и не обязательно нужны для успешной работы веб-сайта.
wp_options
Таблица wp_options
является одной из наиболее важных таблиц базы данных WordPress и хранит все настройки сайта WordPress, такие как URL-адрес, заголовок, установленные плагины и т. Д. Большинство плагинов также хранят настройки в этой таблице.
Все настройки, которые вы видите на панели инструментов WordPress, хранятся в этой таблице.
wp_users,
wp_usermeta
wp_users
хранит всех зарегистрированных пользователей на сайте WordPress. Он содержит основную информацию о пользователе, такую как имя пользователя и зашифрованный пароль, адрес электронной почты, время регистрации, отображаемое имя, статус и еще несколько полей.
wp_usermeta
хранит метаданные («дополнительные данные ») пользователей. Он расширяет таблицу wp_users дополнительными данными.Например, имя пользователя хранится в таблице wp_usermeta вместо таблицы wp_users.
В этой таблице есть два важных поля. Плагины могут хранить пользовательские данные в wp_usermeta
, просто добавляя новые значения meta_key
.
wp_posts,
wp_postmeta
Таблица wp_posts
хранит все данные, связанные с контентом веб-сайта WordPress. Все посты, страницы, их ревизии доступны в таблице wp_posts
.Это может сбивать с толку, но WordPress хранит в этой таблице гораздо больше.
Эта таблица также содержит элементы меню навигации, мультимедийные файлы и вложения, такие как изображения и данные содержимого, которые используются плагинами.
В wp_posts
— это столбец таблицы post_type
, который сегментирует такие разные данные, так что определенные типы данных могут быть запрошены с помощью запроса к базе данных. post_type
— самый важный столбец в этой таблице.
На изображениях ниже вы можете увидеть два разных типа post_types ,
ревизию
и вложение
, которые хранятся в одной и той же таблице wp_posts:
Таблица wp_postmeta
, как и таблица wp_usermeta
, расширяет таблицу wp_posts
дополнительными данными и может использоваться другими плагинами.
Например, плагины для совместного использования в социальных сетях, такие как MashShare, хранят количество публикаций для определенного сообщения в этой таблице, а плагин Yoast SEO также хранит там настраиваемые теги открытого графика, сообщения и данные URL.
wp_terms,
wp_term_relationships,
wp_term_taxonomy
Таблица wp_terms
хранит Категории и теги для сообщений, страниц и ссылок.
Один из столбцов в этой таблице — «slug». Слаг — это термин, который отражает тег определенного сообщения.В WordPress вы можете использовать теги для связывания сообщений, страниц и ссылок между собой.
wp_term_relationship
— это соединение, которое связывает эти теги с сообщениями, страницами и ссылками. Это похоже на карту между терминами, объектами и терминами.
wp_term_taxonomy
расширяет таблицу wp_terms
дополнительными данными. Это похоже на метаданные для таблицы wp_terms
с той разницей, что плагины не могут добавлять сюда пользовательские данные. Эта таблица также содержит взаимосвязь между меню и пунктами меню.
wp_comments
хранит комментарии к сообщениям и страницам. Эта таблица также содержит неутвержденные комментарии и информацию об авторе вместе с иерархией комментариев. Таблица wp_commentmeta содержит дополнительные метаданные о комментариях.
wp_links
Эта таблица содержит информацию о пользовательских ссылках, добавленных на ваш сайт. Он устарел и больше не используется. Есть несколько старых плагинов, которые все еще используют его, но обычно это пустая таблица.
Графическая структура базы данных WordPress
На этой диаграмме показано, как связаны таблицы WordPress:
Источник: WordPress.org
Схема базы данных WordPress и таблицы, которые вы должны знать
WordPress и большинство плагинов хранят свои настройки в серверных базах данных. Хранящиеся там данные сгруппированы в таблицы.
Он похож на лист Excel с одной строкой заголовка и значениями в строке ниже.
В этой статье объясняется, какая таблица обрабатывает контент на веб-сайте WordPress.
Приготовьтесь узнать о схеме базы данных WordPress.
Подводка
База данных является неотъемлемой частью сайта WordPress. WordPress использует систему управления базами данных MySQL версии 5.6 или выше.
Он также может использовать MariaDB версии 10.1 или выше. MariaDB — это вилка MySQL с полной лицензией GPL, которая заменяет MySQL.
Очень важно хорошо понимать структуру таблицы. Он позволяет пользователям узнать, какую таблицу включить или исключить при синхронизации или перемещении данных с промежуточного сайта на рабочий сайт с помощью WP Staging.
Это верно и для обратного процесса. Это также полезно для обновления промежуточного сайта.
WordPress и интерфейс базы данных автоматически. Это означает, что конечным пользователям не нужно знать о его структуре.
Однако тем, кто пишет плагин, может быть полезно иметь больше информации. Это может включать в себя то, как WordPress хранит свои данные и отношения.
Возможно, вы пытались использовать существующий WordPress API для доступа к необходимым данным. Однако это невозможно без прямого подключения к базе данных.
По этой причине WordPress предоставляет класс wpdb .
Популярным способом доступа к базе данных WordPress является использование онлайн-инструмента администрирования под названием phpMyAdmin. Часто он предварительно установлен на многих веб-хостах (через cPanel).
Он также доступен в локальных средах разработки, таких как MAMP.
Помните, однако, что доступ к базе данных сопряжен с риском. Любой неверный шаг может сломать ваш сайт.
Итак, прежде чем что-либо делать, лучше сделать резервную копию.
Обзор схемы базы данных WordPress и таблиц
На новом веб-сайте WordPress 12 таблиц. Это:
- wp_posts
- wp_postmeta
- wp_options
- wp_users
- wp_usermeta
- wp_term_taxonomy
- wp_terms
- wp_term_relationships
- wp_links
- wp_comments
- wp_commentmeta
- wp_termmeta
Таблицы часто связаны друг с другом, поскольку могут быть связаны различные фрагменты данных.
Например, сообщение в блоге может быть связано с категориями и тегами. Таким образом, таблица, в которой хранятся сообщения в блоге, будет связана с таблицей, в которой хранятся категории и теги.
wp_post
В таблице wp_post хранятся все данные, относящиеся к содержимому веб-сайта WordPress. Сюда входят такие вещи, как сообщения, страницы и редакции страниц.
Здесь также хранятся элементы меню навигации, мультимедийные файлы, изображения и вложения. Данные контента, используемые плагинами, также находятся в этой таблице.
Post_type — это столбец таблицы в wp_post, который классифицирует вышеупомянутые данные.Он позволяет пользователям запрашивать определенные типы данных с помощью запроса к базе данных.
Это делает post_type самым важным столбцом в таблице wp_post.
Столбец post_type показывает тип каждой строки — сообщение, страница, вложение, nav_menu_item или другой тип. Такое разнообразие содержания придает таблице гибкий характер.
wp_postmeta
Каждый пост содержит набор данных, называемых метаданными. Хранение этой информации происходит в таблице wp_postmeta.
Некоторые плагины также могут добавлять свои данные в эту таблицу.
wp_postmeta является дополнением к таблице wp_post. Это вертикальная таблица, в которой данные хранятся с использованием пар ключ / значение.
Это метод, который используют многие таблицы WordPress. Он позволяет ядру WordPress, плагинам и темам хранить неограниченное количество данных.
Mashshare, плагин для обмена в социальных сетях, также использует эту таблицу, чтобы делиться количеством определенных сообщений.
Примечание. Многие таблицы базы данных позволяют ядру WordPress, плагинам или темам хранить дополнительную информацию.
wp_options
wp_options — одна из самых важных таблиц WordPress.В этой таблице хранятся все параметры, установленные в разделе «Администрирование»> «Настройки».
Здесь хранятся настройки, включая URL-адрес, заголовок, установленные плагины и т. Д. Большинство плагинов также хранят здесь свои настройки.
В этой таблице также хранятся все настройки панели управления WordPress. В отличие от других таблиц, таблица wp_options не связана ни с какой другой таблицей.
wp_users
В этой таблице содержится список всех зарегистрированных пользователей на вашем сайте WordPress вместе с их основной информацией.Это включает логин, пароль (зашифрованный), адрес электронной почты, время регистрации, отображаемое имя, статус и ключ активации (при необходимости).
wp_usermeta
Метаданные — это набор дополнительных данных о других данных. Как уже отмечалось, таблица wp_user хранит основную информацию о пользователях сайта.
Таблица wp_usermeta содержит дополнительные данные, которые не хранятся в таблице wp_uset. Это включает, например, фамилии пользователей.
wp_terms
В таблице wp_terms хранятся категории сообщений и ссылок, а также теги сообщений.
Термины — это элементы системы классификации объектов. Например, можно по-разному классифицировать сообщения и пользовательские сообщения.
При создании сообщения есть возможность добавить к нему категорию и теги. Это примеры таксономии — системы классификации и группировки вещей.
Таблица wp_term содержит столбец под названием «slug». Слаг — это тег определенного сообщения.
В WordPress вы можете связывать сообщения, страницы и ссылки с помощью тегов.
wp_term_taxonomy
Как видно из названия, эта таблица описывает таксономию для записей в таблице wp_term.Таксономия может быть категорией, ссылкой или тегом.
Структура этой таблицы позволяет использовать один и тот же термин для разных таксономий. Например, термин «база данных» может быть категорией для сообщений, а также настраиваемой таксономией для настраиваемого типа сообщений.
Таким образом, термин «база данных» встречается один раз в таблице wp_terms, но дважды (две строки) в таблице wp_term_taxonomy.
wp_term_relationships
Здесь WordPress хранит важные данные, касающиеся использования таксономий.
В таблице wp_post хранятся данные публикации. Таблица wp_term_relationship записывает заданную категорию и теги.
Он определяет связь между сообщением (объектом) в таблице wp_post и термином определенной таксономии в таблице wp_term_taxonomy.
Например, этот пост связан с категорией и несколькими тегами. Таблица wp_term_relationship отвечает за поддержание этой связи.
wp_links
Ссылки похожи на рекомендательные письма.
Блогролл — это список всех внешних ссылок, который чаще всего отображается на боковой панели веб-сайта. Еще несколько лет назад блогроллы были очень популярны.
Идея заключалась в том, чтобы владельцы веб-сайтов принимали разумные решения при переходе на другой веб-сайт. Однако некоторые владельцы сайтов злоупотребляли функцией блога, поэтому WordPress удалил ее.
Таблица wp_links — это область хранения всех данных, относящихся к спискам блогов и ссылкам. Найти таблицу wp_links сейчас довольно необычно, поскольку списки блогов больше не используются.
wp_comments
Wp_comments хранит все комментарии, оставленные к вашим записям или страницам WordPress. Он также содержит информацию об авторе комментария.
Эта информация может включать имя, адрес электронной почты и тип комментария (простой, ответный или обратный).
При использовании сторонней службы (например, Disqus) комментарии будут храниться на сервере этой системы.
wp_commentmeta
Wp_commentmeta содержит дополнительную информацию о каждом комментарии.Метаданные комментариев включают:
- meta_id — уникальный номер, присвоенный каждой строке
- comment_id — ID поста, к которому относятся данные (ссылка на таблицу wp_comments)
- meta_value — кусок данных
- meta_key — идентификационный ключ к фрагменту данных
wp_termmeta
Это новая таблица, представленная в WordPress 4.4. В нем хранится дополнительная информация о терминах (данные не хранятся в таблице wp_terms).
Доступ к термину «мета» можно получить с помощью следующих функций:
add_term_meta, get_term_meta, update_term_meta и delete_term_meta.
Разработчики используют термин «мета» для стандартного хранения пользовательских данных о терминах. Например, чтобы прикрепить изображение к категории сообщения, которое будет отображаться на странице архива категории.
Эй, а вы знали, что данные тоже могут быть красивыми?
wpDataTables может это сделать. Есть веская причина, почему это плагин WordPress №1 для создания адаптивных таблиц и диаграмм.
Реальный пример wpDataTables в дикой природе
И действительно легко сделать что-то вроде этого:
- Вы предоставляете данные таблицы
- Настроить и настроить
- Опубликуйте в сообщении или на странице
И это не только красиво, но и практично.Вы можете создавать большие таблицы, содержащие до миллионов строк, или вы можете использовать расширенные фильтры и поиск, или вы можете пойти на нет и сделать их доступными для редактирования.
«Да, но я просто слишком люблю Excel, а на сайтах ничего подобного нет». Да, есть. Вы можете использовать условное форматирование, как в Excel или Google Sheets.
Я говорил вам, что вы тоже можете создавать диаграммы с вашими данными? И это лишь малая часть. Для вас есть много других функций.
Завершение мыслей о схеме базы данных WordPress
Понятно, что разработчики WordPress или плагинов должны знать, как работает база данных.
Но пользователи WordPress также должны иметь некоторые базовые знания о базе данных. В конце концов, это важная часть каждого веб-сайта.
База данных расширяется с каждой новой информацией, добавляемой на сайт. Для поддержки определенных функций веб-сайта необходимо добавлять новые таблицы в базу данных.
Например, при установке wpDataTables создает собственную таблицу базы данных WordPress. Не все плагины делают это, многие используют уже существующие таблицы.
Цель этой статьи — четко очертить структуру базы данных. Это также дает представление о том, как WordPress работает в фоновом режиме.
Это правда, что плагины есть практически для всего. Но не спешите устанавливать их, поскольку может быть доступна более простая и быстрая альтернатива.
Если вам понравилось читать эту статью о схеме базы данных WordPress, вы должны проверить эту статью о том, как выполнить сброс базы данных WordPress.
Мы также писали о нескольких связанных темах, например о том, как найти и заменить URL-адрес в базе данных WordPress, как выполнить очистку базы данных WordPress и как сканировать базу данных WordPress на наличие вредоносных программ.
Структура базы данных WordPress — WebNots
WordPress по умолчанию создает несколько основных таблиц в базе данных во время установки. Этих таблиц достаточно для правильной работы WordPress. Однако плагины будут добавлять дополнительные таблицы для улучшения функций. Например, плагин WooCommerce добавит более 25 таблиц в базу данных. К сожалению, большинство плагинов, включая WooCommerce, не удаляют таблицы базы данных при удалении плагина. Это может создать путаницу, когда вы заглянете в базу данных об основной таблице и таблицах, созданных плагинами.Вот детали структуры базы данных WordPress, объясняющие функции каждой основной таблицы.
Структура базы данных WordPress
База данных
WordPress будет иметь следующие 12 таблиц как часть установки по умолчанию:
Таблица | Цель | Раздел панели администратора | |
---|---|---|---|
Сообщения wp_posts | Хранит контент | Сообщения / Страницы> Добавить новый | |
wp_postmeta Pages | |||
wp_comments | Сохранять комментарии пользователей | Комментарии | |
wp_commentmeta | Сохранять метаданные комментариев | Комментарии | |
wp_terms | > Магазины | ||
wp_termmeta | Мета-данные для категорий и тегов | Посты> Категории Посты> Теги | |
wp_term_relationships | Временные отношения с постами | Посты> Категории Сообщения> Теги | |
wp_users | Сведения о пользователе | Пользователи> Добавить новый | |
wp_usermeta | Пользовательские метаданные | Пользователи> Добавить новый | Сведения о ссылке |
wp_options | Параметры сайта | Раздел настроек |
Приведенный выше список таблиц предназначен для установки на одном сайте, а для нескольких сайтов у вас будут дополнительные таблицы, такие как wp_blogs, wp_blogmeta, wp_sites, wp_sitemeta_veristration, wp_sites, wp_sitemeta_pregistration_signsions_blog .В этой статье мы сосредоточимся только на установке на одном сайте.
Любые другие таблицы в вашей базе данных создаются плагинами. Помните, что WordPress по умолчанию использует «wp_» для префикса таблицы. Однако вы можете найти другой префикс в зависимости от того, который вы использовали во время установки. Softaculous и другие установщики WordPress по щелчку автоматически создают разные префиксы при установке WordPress через вашу учетную запись хостинга. Как видите, в приведенном ниже примере нашей демонстрационной установки префиксом таблицы является «wpeg_».
Таблицы базы данных WordPress
У команды
Core WordPress есть красивая картинка, объясняющая структуру базы данных WordPress. Он четко объясняет структуру и поля, используемые каждой таблицей.
Структура базы данных WordPress
Объяснение таблиц WordPress
Давайте начнем с объяснения таблиц на основе внешнего вида страницы WordPress. Ниже приведен образец страницы этого сайта с текстом, изображением, ссылкой и комментарием. Соответствующая таблица упоминается, откуда вы можете найти данные в бэкэнде.
Статья с соответствующими таблицами WordPress
Кроме того, вы можете найти данные каждой таблицы в соответствующих разделах административной панели WordPress, как указано в приведенной выше таблице.
Таблица сообщений: wp_posts
Многие люди неправильно понимают значение таблицы сообщений, поскольку в ней хранятся только сообщения. WordPress хранит весь ваш текстовый контент в таблице wp_posts независимо от типов сообщений. Это означает, что вы можете найти весь свой контент в таблицах wp_posts для сообщений, страниц и любых других пользовательских типов сообщений.Кроме того, вы также можете найти вложения, редакции и автосохранение в той же таблице.
Сообщение Мета: wp_postmeta
Лучший пример объяснения мета поста — плагин Yoast SEO. При использовании плагина вы можете видеть мета-поле для добавления заголовка SEO, мета-описания и т. Д. Для каждого сообщения. WordPress сохранит все данные, связанные с публикациями, в таблице wp_postmeta.
Структура мета-таблицы сообщений
Это одна из самых быстрорастущих версий WordPress из-за неправильного использования плагинов.Ознакомьтесь с нашей статьей о том, как очистить таблицу postmeta в WordPress.
Комментарии: wp_comments
Если вы включили комментарии в WordPress, вы увидите возможность оставлять комментарии под каждым сообщением или страницей. WordPress сохранит все комментарии пользователей в таблице «wp_comments».
Таблица комментариев также является одной из самых быстрорастущих во многих установках WordPress из-за спам-комментариев. Вы должны использовать Akismet, captcha или любой другой способ модерирования комментариев, чтобы таблица не содержала нежелательных комментариев.
Комментарии Мета: wp_commentmeta
Подобно мета-записи, WordPress будет хранить все мета-комментарии в таблице wp_commentmeta.
Термины: wp_terms
В таблице
Термины хранятся категории и теги для сообщений.
Термин Мета: wp_termmeta
Все метаданные термина хранятся в таблице wp_termmeta.
Таксономия: wp_term_taxonomy
Он расширяет детали терминов, хранящихся в таблице wp_terms.
Отношения: wp_term_relationships
В этой таблице хранится связь категорий и тегов с сообщениями.
Пользователи: wp_users
В этой таблице вы можете найти всех зарегистрированных пользователей вашего сайта. Помните, что в этой таблице не будет комментаторов, которые оставляют комментарии без регистрации. Вы должны найти эти детали в таблице wp_commentmeta.
Мета пользователя: wp_usermeta
Метаданные, относящиеся к пользователям, хранятся в таблице wp_usermeta.
Ссылки: wp_links
Ранее в WordPress была возможность создавать ссылки, например, для создания новых сообщений. Однако впоследствии это было удалено, и таблица больше не используется.Вы должны увидеть эту таблицу пустой, если ее не использует разработчик темы или плагина.
Параметры: wp_options
В таблице параметров
хранятся все настройки сайта, такие как URL-адрес сайта, активные плагины, имя пользователя администратора и т. Д. Разработчики плагинов и тем часто используют таблицу параметров для загрузки настроек. Если таблица параметров создает для вас проблемы, ознакомьтесь с нашей статьей о том, как очистить таблицу wp_options.
Объяснение
таблиц базы данных WordPress Multisite
Работа с мультисайтом WordPress требует немного больше знаний о WordPress и опыта в качестве администратора WordPress, чем работа с одним сайтом.Когда вы пытаетесь исправить проблемы с вашей многосайтовой сетью WordPress, иногда полезно знать, как структурирована база данных многосайта и каковы различия между базой данных одного сайта и многосайтовой базой данных WordPress.
Итак, давайте посмотрим, какие таблицы базы данных есть у нас на одном сайте, а какие — на мультисайте. Мы кратко объясним каждую из таблиц для нескольких сайтов. Если вам нужно объяснение таблиц отдельного сайта, прочтите публикацию «Описание базы данных» в Кодексе WordPress.
Подсказка: начиная с одиночного сайта, установленного на WordPress, можно переключиться на мультисайт WordPress с помощью процедуры, описанной в кодексе WordPress.
Таблицы базы данных единого сайта WordPress
При установке WordPress на одном сайте используются следующие таблицы базы данных:
- wp_commentmeta
- wp_comments
- wp_links
- wp_options
- wp_postmeta
- wp_posts
- wp_terms
- wp_termmeta
- wp_term_relationships
- wp_term_taxonomy
- wp_usermeta
- wp_users
После того, как мы продолжим процедуру установки Multisite, некоторые из этих таблиц будут обновлены, а другие новые таблицы будут добавлены.Остальные не меняются, но начинают ссылаться на основной сайт, а для других сайтов (не основных) создаются специфические.
Таблицы базы данных WordPress Multisite
Итак, вот новая ситуация после установки Multisite:
- wp_blogs → НОВЫЙ
- wp_blogs_versions → НОВИНКА
- wp_commentmeta → относится к основному сайту
- wp_comments → относится к основному сайту
- wp_links → относится к основному сайту
- wp_options → относится к основному сайту
- wp_postmeta → относится к основному сайту
- wp_posts → относится к основному сайту
- wp_registration_log → НОВИНКА
- wp_signups → НОВЫЙ
- wp_site → НОВЫЙ
- wp_sitemeta → НОВЫЙ
- wp_terms → относится к основному сайту
- wp_termmeta → относится к основному сайту
- wp_term_relationships → относится к основному сайту
- wp_term_taxonomy → относится к основному сайту
- wp_usermeta → ОБНОВЛЕНО
- wp_users → ОБНОВЛЕНО
- СПЕЦИАЛЬНЫЕ ТАБЛИЦЫ САЙТА → НОВЫЙ, относится к другим сайтам, кроме основного
Новые столы
- wp_blogs: каждый созданный сайт хранится в этой таблице
- wp_blogs_versions: эта таблица отслеживает статус версии базы данных для каждого сайта
- wp_registration_log: в этой таблице хранится пользователь admin, созданный при создании нового сайта
- wp_signups: в этой таблице хранятся пользователи, которые зарегистрировались на сайте через процесс регистрации входа в систему.
- wp_site: в этой таблице хранится адрес сайтов
- wp_sitemeta: здесь отслеживается различная информация о сайте
Обновленные таблицы
- wp_users: в этой таблице ведется список всех пользователей всех сайтов
- wp_usermeta: здесь хранятся метаданные пользователей для всех сайтов
Таблицы для конкретных мест
Данные основного сайта хранятся в существующих ненумерованных таблицах, а данные дополнительных сайтов хранятся в новых пронумерованных таблицах.
Итак, для основного сайта у нас есть эти специальные таблицы:
- wp_commentmeta
- wp_comments
- wp_links
- wp_options
- wp_postmeta
- wp_posts
- wp_terms
- wp_termmeta
- wp_term_relationships
- wp_term_taxonomy
В то время как, например, при создании нового сайта создаются таблицы для конкретных сайтов, аналогичные установке для одного сайта.Каждый набор таблиц для сайта создается с идентификатором сайта (blog_id) как частью имени таблицы. Это таблицы, которые будут созданы для сайта с ID 2:
.
- wp_2_commentmeta
- wp_2_comments
- wp_2_links
- wp_2_options
- wp_2_postmeta
- wp_2_posts
- wp_2_terms
- wp_2_termmeta
- wp_2_term_relationships
- wp_2_term_taxonomy
Артикул:
https: // codex.wordpress.org/Database_Description
https://deliciousbrains.com/wordpress-multisite-database-tour/
https://rudrastyh.com/wordpress-multisite/database-tutorial.html
База данных и таблицы WP — Учебник
Ниже приводится схема и описание таблиц базы данных, созданных во время стандартной установки WordPress версии 3.4. В настоящее время единственной базой данных, поддерживаемой WordPress, является MySQL версии 5.0,15 или больше.
См. Также предыдущие версии описаний баз данных для 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 хранит свои данные и взаимосвязи. Если вы уже пытались использовать существующий API WordPress для доступа к нужным вам данным, но определили, что это невозможно без прямого доступа к базе данных, WordPress предоставляет класс wpdb, чтобы упростить эту задачу.
Схема базы данных
На схеме ниже представлен визуальный обзор базы данных WordPress и отношений между таблицами, созданными во время стандартной установки WordPress. В приведенном ниже обзоре таблиц содержатся дополнительные сведения о таблицах и столбцах.
(схема базы данных WP 3.0)
Обратите внимание, что при стандартной установке WordPress целостность между таблицами не обеспечивается, например: между сообщениями и комментариями.Если вы создаете плагин или расширение, которое манипулирует базой данных WordPress, ваш код должен выполнять уборку, чтобы в таблицах не оставалось ни одного потерянных записей, например. удаляя записи в других таблицах с помощью набора команд SQL при удалении внешних ключей (не забудьте напомнить пользователям о необходимости резервного копирования перед такими операциями).
Обзор таблицы
Обзор таблицы
Этот раздел представляет собой обзор всех таблиц, созданных во время стандартной установки WordPress.За ним следует конкретная информация о том, что находится в каждой таблице.
Детали таблицы
Ниже приведены конкретные поля в каждой из таблиц, созданных во время стандартной установки WordPress.
Таблица: wp_commentmeta
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
meta_id | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
comment_id | bigint (20) без знака | IND | 0 | FK-> wp_comments.comment_id | |
meta_key | varchar (255) | ДА | IND | ПУСТО | |
meta_value | длинный текст | ДА | ПУСТО |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 0 | meta_ID |
comment_id | ИНДЕКС | нет | comment_id |
meta_key | ИНДЕКС | нет | meta_key |
Таблица: wp_comments
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
comment_ID | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
comment_post_ID | bigint (20) без знака | IND | 0 | FK-> wp_posts.ID | |
comment_author | tinytext | ||||
comment_author_email | варчар (100) | ||||
comment_author_url | варчар (200) | ||||
comment_author_IP | варчар (100) | ||||
comment_date | дата и время | 0000-00-00 00:00:00 | |||
comment_date_gmt | дата и время | IND & IND Pt2 | 0000-00-00 00:00:00 | ||
comment_content | текст | ||||
comment_karma | внутр (11) | 0 | |||
comment_approved | варчар (20) | IND и Ind Pt1 | 1 | ||
comment_agent | varchar (255) | ||||
comment_type | варчар (20) | ||||
comment_parent | bigint (20) без знака | 0 | FK-> wp_comments.ID | ||
user_id | bigint (20) без знака | 0 | FK-> wp_users.ID |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 1 | comment_ID |
comment_post_ID | ИНДЕКС | Нет | comment_post_ID |
comment_approved_date_gmt | ИНДЕКС | Нет | comment_approvedcomment_date_gmt |
comment_date_gmt | ИНДЕКС | Нет | comment_date_gmt |
comment_parent | ИНДЕКС | Нет | comment_parent |
Таблица: wp_links
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
link_id | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
link_url | varchar (255) | ||||
имя_ссылки | varchar (255) | ||||
link_image | varchar (255) | ||||
link_target | варчар (25) | ||||
link_description | varchar (255) | ||||
link_visible | варчар (20) | IND | Y | ||
link_owner | bigint (20) без знака | 1 | |||
рейтинг ссылки | внутр (11) | 0 | |||
link_updated | дата и время | 0000-00-00 00:00:00 | |||
ссылка_рел | varchar (255) | ||||
link_notes | средний текст | ||||
ссылка_rss | varchar (255) |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 7 | link_ID |
ссылка_категория | ИНДЕКС | Нет | link_category |
link_visible | ИНДЕКС | Нет | link_visible |
Таблица: wp_options
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
option_id | bigint (20) без знака | PRI Pt1 | ПУСТО | auto_increment | |
имя_параметра | varchar (64) | PRI Pt3 и IND | |||
option_value | длинный текст | ||||
автозагрузка | варчар (20) | да |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 184 | option_idblog_idoption_name |
имя_параметра | УНИКАЛЬНЫЙ | 184 | option_name |
Таблица: wp_postmeta
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
meta_id | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
post_id | bigint (20) без знака | IND | 0 | FK-> wp_posts.ID | |
meta_key | varchar (255) | ДА | IND | ПУСТО | |
meta_value | длинный текст | ДА | ПУСТО |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 13 | meta_ID |
post_id | ИНДЕКС | 15 | post_id |
meta_key | ИНДЕКС | 7 | meta_key |
Таблица: wp_posts
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
ID | bigint (20) без знака | PRI & IND Pt4 | auto_increment | ||
post_author | bigint (20) без знака | 0 | FK-> wp_users.ID | ||
post_date | дата и время | IND Pt3 | 0000-00-00 00:00:00 | ||
post_date_gmt | дата и время | 0000-00-00 00:00:00 | |||
post_content | длинный текст | ||||
post_title | текст | ||||
post_excerpt | текст | ||||
post_status | варчар (20) | ИНД ПТ2 | опубликовать | ||
comment_status | варчар (20) | открыто | |||
ping_status | варчар (20) | открыто | |||
post_password | варчар (20) | ||||
post_name | варчар (200) | IND | |||
to_ping | текст | ||||
пингуется | текст | ||||
post_modified | дата и время | 0000-00-00 00:00:00 | |||
post_modified_gmt | дата и время | 0000-00-00 00:00:00 | |||
post_content_filtered | длинный текст | ||||
post_parent | bigint (20) без знака | 0 | FK-> wp_posts.ID | ||
направляющая | varchar (255) | ||||
menu_order | внутр (11) | 0 | |||
post_type | варчар (20) | IND Pt1 | пост | ||
post_mime_type | варчар (100) | ||||
comment_count | бигинт (20) | 0 |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 2 | ID |
post_name | ИНДЕКС | Нет | post_name |
type_status_date | ИНДЕКС | Нет | post_typepost_statuspost_dateID |
post_parent | ИНДЕКС | Нет | post_parent |
post_author | ИНДЕКС | Нет | post_author |
Таблица: wp_terms
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
term_id | bigint (20) без знака | PRI | auto_increment | ||
наименование | варчар (200) | ||||
пуля | варчар (200) | UNI | |||
термин_группа | бигинт (10) | 0 |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 2 | term_ID |
пуля | УНИКАЛЬНЫЙ | 2 | пуля |
наименование | Индекс | нет | название |
Таблица: wp_term_relationships
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
object_id | bigint (20) без знака | PRI Pt1 | 0 | ||
term_taxonomy_id | bigint (20) без знака | PRI Pt2 и IND | 0 | FK-> wp_term_taxonomy.term_taxonomy_id | |
term_order | внутр (11) | 0 |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 8 | object_idterm_taxonomy_id |
term_taxonomy_id | ИНДЕКС | Нет | term_taxonomy_id |
Таблица: wp_term_taxonomy
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
term_taxonomy_id | bigint (20) без знака | PRI | auto_increment | ||
term_id | bigint (20) без знака | UNI Pt1 | 0 | FK-> wp_terms.term_id | |
таксономия | varchar (32) | UNI Pt2 | |||
описание | длинный текст | ||||
родитель | bigint (20) без знака | 0 | |||
количество | бигинт (20) | 0 |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 2 | term_taxonomy_id |
term_id_taxonomy | УНИКАЛЬНЫЙ | 2 | term_idtaxonomy |
таксономия | ИНДЕКС | Нет | таксономия |
Таблица: wp_usermeta
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
umeta_id | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
user_id | bigint (20) без знака | ‘0’ | FK-> wp_users.ID | ||
meta_key | varchar (255) | Есть | IND | ПУСТО | |
meta_value | длинный текст | Есть | IND | ПУСТО |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 9 | umeta_id |
user_id | ИНДЕКС | Нет | user_id |
meta_key | ИНДЕКС | Нет | meta_key |
Таблица: wp_users
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
ID | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
user_login | варчар (60) | IND | |||
user_pass | varchar (64) | ||||
user_nicename | варчар (50) | IND | |||
user_email | варчар (100) | ||||
user_url | варчар (100) | ||||
зарегистрирован_пользователь | дата и время | 0000-00-00 00:00:00 | |||
user_activation_key | варчар (60) | ||||
user_status | внутр (11) | 0 | |||
display_name | варчар (250) |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 1 | ID |
user_login_key | ИНДЕКС | Нет | user_login |
user_nicename | ИНДЕКС | Нет | user_nicename |
Обзор многосайтовой таблицы
В этом разделе представлен обзор таблиц, созданных для использования с функцией Multisite в WordPress.Эти таблицы создаются с помощью процессов в разделе «Администрирование»> «Инструменты»> «Сеть».
Эти таблицы считаются глобальными таблицами для нескольких сайтов.
Обзор многосайтовой таблицы
В этом разделе представлен обзор таблиц, созданных для использования с функцией Multisite WordPress. Эти таблицы создаются с помощью процессов в разделе «Администрирование»> «Инструменты»> «Сеть».
Эти таблицы считаются глобальными таблицами для нескольких сайтов.
Подробная информация о многосайтовой таблице
Ниже описаны таблицы и поля, созданные во время сетевой установки.Обратите внимание, что глобальный набор таблиц создается при создании сети, а таблицы для конкретных сайтов создаются при создании каждого сайта.
Таблица: wp_blogs
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
blog_id | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
site_id | bigint (20) без знака | IND | 0 | ||
домен | варчар (200) | НЕТ | 0 | ||
путь | варчар (100) | НЕТ | |||
зарегистрировано | дата и время | НЕТ | 0000-00-00 00:00:00 | ||
last_updated | дата и время | НЕТ | 0000-00-00 00:00:00 | ||
общественный | tinyint (2) | НЕТ | 0 | ||
в архиве | перечисление (‘0’, ’1’) | НЕТ | 0 | ||
зрелые | tinyint (2) | НЕТ | 0 | ||
спам | tinyint (2) | НЕТ | 0 | ||
удалено | tinyint (2) | НЕТ | 0 | ||
lang_id | внутр (11) | НЕТ | 0 |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 2 | blog_id |
домен | ИНДЕКС | нет | домен (50), путь (5) |
lang_id | ИНДЕКС | нет | lang_id |
Таблица: wp_blog_versions
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
blog_id | bigint (20) без знака | PRI | 0 | FK-> wp_blogs.blog_id | |
db_version | варчар (20) | НЕТ | |||
last_updated | дата и время | НЕТ | 0000-00-00 00:00:00 |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 2 | blog_id |
db_version | ИНДЕКС | нет | db_version |
Таблица: wp_registration_log
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
ID | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
электронная почта | varchar (255) | НЕТ | |||
IP | варчар (30) | НЕТ | |||
blog_id | bigint (20) без знака | PRI | 0 | FK-> wp_blogs.blog_id | |
дата регистрации | дата и время | НЕТ | 0000-00-00 00:00:00 |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 1 | ID |
IP | ИНДЕКС | нет | IP |
Таблица: wp_signups
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
домен | варчар (200) | НЕТ | 0 | ||
путь | варчар (100) | НЕТ | |||
название | длинный текст | НЕТ | |||
user_login | варчар (60) | НЕТ | IND | ||
user_email | варчар (100) | НЕТ | |||
зарегистрировано | дата и время | НЕТ | 0000-00-00 00:00:00 | ||
активировано | дата и время | НЕТ | 0000-00-00 00:00:00 | ||
активный | tinyint (1) | НЕТ | |||
ключ_ктивации | варчар (50) | НЕТ | |||
мета | длинный текст |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ключ_ктивации | ИНДЕКС | Нет | ключ_активации |
домен | ИНДЕКС | Нет | домен |
Таблица: wp_site
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
id | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
домен | варчар (200) | НЕТ | 0 | ||
путь | варчар (100) | НЕТ |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 1 | id |
домен | ИНДЕКС | нет | домен, путь |
Таблица: wp_sitecategories
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
cat_id | bigint (20) без знака | НЕТ | PRI | ПУСТО | auto_increment |
cat_name | варчар (55) | НЕТ | |||
category_nicename | варчар (200) | НЕТ | |||
last_updated | метка времени | НЕТ |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 9 | cat_id |
category_nicename | ИНДЕКС | Нет | category_nicename |
last_updated | ИНДЕКС | Нет | last_updated |
Таблица: wp_sitemeta
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
meta_id | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
site_id | bigint (20) без знака | ‘0’ | FK-> wp_site.site_id | ||
meta_key | varchar (255) | Есть | IND | ПУСТО | |
meta_value | длинный текст | Есть | IND | ПУСТО |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 9 | meta_id |
meta_key | ИНДЕКС | Нет | meta_key |
site_id | ИНДЕКС | Нет | site_id |
Таблица: wp_users
Поле | Тип | Пусто | Ключ | По умолчанию | Экстра |
---|---|---|---|---|---|
ID | bigint (20) без знака | PRI | ПУСТО | auto_increment | |
user_login | варчар (60) | IND | |||
user_pass | varchar (64) | ||||
user_nicename | варчар (50) | IND | |||
user_email | варчар (100) | ||||
user_url | варчар (100) | ||||
зарегистрирован_пользователь | дата и время | 0000-00-00 00:00:00 | |||
user_activation_key | варчар (60) | ||||
user_status | внутр (11) | 0 | |||
display_name | варчар (250) | ||||
спам | tinyint (2) | НЕТ | 0 | ||
удалено | tinyint (2) | НЕТ | 0 |
Индексы
Keyname | Тип | Мощность | Поле |
---|---|---|---|
ПЕРВИЧНЫЙ | ПЕРВИЧНЫЙ | 1 | ID |
user_login_key | ИНДЕКС | Нет | user_login |
user_nicename | ИНДЕКС | Нет | user_nicename |
Таблицы для конкретных мест
Когда создается новый дополнительный сайт, создаются специфичные для сайта таблицы, аналогичные автономным таблицам выше.Каждый набор таблиц для сайта создается с идентификатором сайта ( blog_id
) как частью имени таблицы. Это таблицы, которые будут созданы для идентификатора сайта 2 и table_prefix wp_ :
Данные основного сайта хранятся в ненумерованных таблицах.
wp_posts
WordPress в основном используется как система управления контентом движка блогов (для краткости CMS). Так что, на мой взгляд, первостепенное значение имеет таблица «содержание». Страницы, сообщения и вложения — все это контент.И WordPress хранит их все в одной таблице — wp_posts.
На самом деле вложения хранятся как есть — файлы на диске, но WordPress использует таблицу wp_posts для хранения метаинформации о вложениях, такой как идентификатор пользователя, который его загрузил, идентификатор сообщения, на которое привязано вложение, дата его загрузки, пр.
Страницы, сообщения и вложения могут быть очень похожими и очень разными. А пока мы хотим взглянуть на то, что у них общего. У всех трех есть уникальный идентификатор (обычно автоматически генерируется WordPress или MySQL), автор (человек, который написал сообщение или загрузил файл), дату публикации, заголовок и описание (даже если оно пусто, есть способ добавить его. и использовать позже).У всех трех есть URL. Итак, для каждого сообщения, страницы и вложения WordPress ведет запись в таблице wp_posts .
Есть несколько способов отличия сообщений, страниц и вложений. Чтобы различать их, WordPress использует столбец post_type в таблице wp_posts . Для сообщений значение post_type — «post». Для страниц — «страница». Для вложений — «вложение».
Далее, есть несколько столбцов, которые используются только тогда, когда сообщение имеет определенный тип.Например, столбец post_mime_type используется для хранения типов файлов вложений, таких как «image / jpeg» и «application / pdf» (прочтите о MIME в Википедии). Столбец menu_order используется для указания порядка страниц. Столбец post _parent используется для организации страниц с подстраницами, а также для привязки вложений к сообщениям.
Чтобы получить более полное представление о том, как и когда используется каждое поле, взгляните на реальные записи для каждого типа сообщений:
- SELECT * FROM wp_posts WHERE post_type = ‘post’ LIMIT 1
- SELECT * FROM wp_posts WHERE post_type = ‘page’ LIMIT 1
- SELECT * FROM wp_posts WHERE post_type = ‘attachment’ LIMIT 1
Если вы используете инструмент командной строки MySQL, вы оцените «\ G» в конце запроса («SELECT * FROM wp_posts WHERE post_type =’ post ’LIMIT 1 \ G»).Это даст вам результаты в чуть более читаемом формате.
Статус сообщения также сохраняется в этой таблице. В большинстве случаев вы увидите «опубликовать» для опубликованных сообщений, «черновик» для черновиков и «наследование» для вложений. Но есть еще несколько, о которых вы можете узнать из спецификации таблицы.
Вот несколько идей о том, что можно сделать, используя только таблицу wp_posts:
- Сгенерируйте некоторую статистику — сколько всего постов, сколько постов каждого типа, сколько постов опубликовал каждый автор, каково среднее количество постов, публикуемых в день в течение определенного периода времени и т. Д.
- Создать список всех вложений
- Создайте галерею изображений для каждого сообщения (подсказка: « WHERE post_type =‘ attachment ’AND (post_mime_type =‘ image / jpeg ’OR post_mime_type =‘ image / gif ’OR post_mime_type =‘ image / png ’) “).
wp_postmeta
Вероятно, есть миллион вещей, которые вы хотели бы сохранить в некоторых своих сообщениях — настроение, в котором вы были, когда написали, песня, которую вы слушали в данный момент, географическое положение, в котором вы были, некоторый список связанных ссылок , специфическая для постов информация для поисковых систем (SEO) и т. д., и т. д.Все это входит в таблицу wp_postmeta .
Структура этой таблицы очень проста и гибка. У него всего четыре столбца: meta_id , post_id , meta_key и meta_value . meta_id создается автоматически, и я не могу придумать сценарий, в котором вы бы хотели это изменить — есть много других забавных вещей, которые можно сделать. post_id — это идентификатор сообщения (как в записи из таблицы wp_posts), с которым связана текущая метаинформация. meta_key — это описание информации, которую вы хотите прикрепить к сообщению (например, «настроение» или «песня»). meta_value — это фактическое содержание метаинформации (например, «Grumpy!» Или «The WordPress Song.mp3»).
WordPress использует эту таблицу для хранения дополнительной информации о вложениях, которая не умещается в таблице wp_posts (путь файловой системы к вложению, информация об эскизах, если таковая имеется, и т. Д.). Кроме того, эта таблица используется для хранения имен и значений настраиваемых полей — тех, которые вы видите в поле под редактором сообщений.И, конечно же, существует множество плагинов, которые используют эту таблицу для своих нужд. Итак, если вы решите использовать эту таблицу в своем плагине, убедитесь, что вы придумали несколько уникальных имен для ваших мета-ключей. В противном случае ваш плагин может мешать работе другого плагина, и вы получите действительно странные и совершенно неожиданные результаты.
wp_users
WordPress использует это для хранения зарегистрированных пользователей. Идентификатор пользователя, логин, зашифрованный пароль, полное имя, дата регистрации и тому подобное хранятся в wp_users .Думайте об этом как о важной информации о пользователях.
wp_usermeta
Таблица wp_usermeta для пользователей — это именно та таблица wp_postmeta для сообщений. Здесь вы можете хранить все, что угодно для каждого зарегистрированного пользователя — персональные настройки блога (например, WordPress уже делает это для предпочтений визуального редактора), дни рождения, контактную информацию и т. Д.
wp_comments
таблица wp_comments сохраняет все комментарии для вашего сайта.Сюда входят все одобренные комментарии, комментарии, ожидающие модерации, спам-комментарии и даже обратные ссылки и пингбеки, которые отправляются вам с других веб-сайтов. Вы, вероятно, сможете угадать большинство столбцов в этой таблице без моего уведомления. Но на всякий случай вот те, которые вам, вероятно, небезразличны:
- comment_ID — уникальный идентификатор каждого комментария, автоматически сгенерированный MySQL
- comment_post_ID — ID поста, к которому был сделан комментарий
- comment_author — имя автора комментария
- comment_author_email — адрес электронной почты автора комментария
- comment_author_url — URL автора комментария
- comment_author_IP — IP, с которого пришел автор комментария
- comment_date — дата и время создания комментария
- comment_content — собственно комментарий
- comment_approved — модерировался ли комментарий, и если да, то как
- comment_agent — подпись комментатора в браузере (MSIE, Firefox, Safari и т. Д.)
- comment_type — если это обычный комментарий, или трекбэк, или что-то еще
- user_id — если пользователь комментария является зарегистрированным пользователем, здесь будет указан его идентификатор
- Там есть еще несколько полей, но мы пока оставим их, как и с другими таблицами. wp_options Как мы видели в обновлении сообщения «Быстрый доступ к параметрам WordPress», wp_options — это таблица, которая содержит все глобальные параметры для вашей установки WordPress. Ядро этой таблицы очень похоже на таблицы wp_postmeta и wp_usermeta . И это понятно — wp_options хранит информацию о вашем WordPress примерно так же, как wp_postmeta хранит информацию о сообщениях, а wp_usermeta хранит информацию о пользователях.Однако вы, вероятно, заметите несколько дополнительных столбцов. blog _id столбец есть, но он не очень полезен в автономных установках WordPress. Используется только WordPress MU. Обычный WordPress и WordPress MU используют большую часть исходного кода и структуры базы данных. Итак, WordPress MU использует столбец blog_id в таблице wp_options , чтобы различать параметры для разных блогов под одной крышей. Автозагрузка Столбец определяет, всегда ли параметр загружается из базы данных и кэшируется для использования WordPress и плагинами, или если он доступен только для чтения по запросу.Большинство опций, которые я видел, загружаются автоматически. wp_categories Если у вас есть какие-либо категории в вашей установке WordPress, wp_categories — это таблица, в которой хранятся эти записи. Здесь хранятся названия и описания категорий, а также идентификатор каждой родительской категории. Чтобы работать быстрее, WordPress часто хранит агрегированные значения в базе данных, а не пересчитывает их каждый раз. Например, часто запрашиваемое количество сообщений и ссылок в каждой категории просто сохраняется в таблице wp_categories (WordPress использует один и тот же набор категорий как для ссылок, так и для сообщений).Каждый раз, когда вы добавляете сообщение в категорию, счетчик сообщений (столбец category_counter ) увеличивается. Каждый раз, когда вы удаляете пост из категории, счетчик уменьшался. То же самое и со ссылками (столбец link_count ). Вот почему вы видите эти дополнительные столбцы в таблице. wp_post2cat
Связывание сообщений с категориями осуществляется через таблицу wp_post2cat. Это стандартный подход для отношений «многие ко многим» в реляционных базах данных. В таблице wp_post2cat всего три поля: уникальный идентификатор записи (автоматически сгенерированный), идентификатор сообщения и идентификатор категории, в которую нужно добавить сообщение.
wp_links
Обычно таблица wp_links используется для хранения ролика блога — списка ссылок веб-сайта. Внимательно проверьте интерфейс администрирования блога, и вы увидите множество опций, которые не используются большинством пользователей WordPress (хотя здесь нет статистических доказательств). Все эти параметры ссылок могут быть сохранены в таблице wp_links . Фактически, вам не нужно писать много кода, чтобы превратить WordPress в каталог ссылок, например Yahoo! когда-то было. Это будет только вопрос подходящей темы.
Здесь следует отметить один важный момент: link_owner сохраняется для каждой ссылки. Итак, вы знаете, кто создал ссылку.
wp_link2cat
Таблица
wp_link2cat является точной копией wp_post2cat, за исключением того, что в ней хранится идентификатор ссылки, а не идентификатор сообщения.
Вот и все, что касается структуры базы данных WordPress. Если вы видите в своей установке какие-либо другие таблицы, то они, вероятно, были добавлены одним из установленных вами плагинов.
Таблицы базы данных
WPML — WPML
LnRiLWltYWdle3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246dHJhbnNmb3JtIDAuMjVzIGVhc2V9LndwLWJsb2NrLWltYWdlIC50Yi1pbWFnZS5hbGlnbmNlbnRlcnttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvfS50Yi1pbWFnZSBpbWd7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87d2lkdGg6YXV0bzt0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjI1cyBlYXNlfS50Yi1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbi1maXQtdG8taW1hZ2V7ZGlzcGxheTp0YWJsZX0udGItaW1hZ2UgLnRiLWltYWdlLWNhcHRpb24tZml0LXRvLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9ue2Rpc3BsYXk6dGFibGUtY2FwdGlvbjtjYXB0aW9uLXNpZGU6Ym90dG9tfSAudGItaW1hZ2VbZGF0YS10b29sc2V0LWJsb2Nrcy1pbWFnZT0iZWRkNTcxZGVmNzlkYjc1NDRhOWQ4OTdiYjMwZjEwZDMiXSB7IG1heC13aWR0aDogMTAwJTsgfSAudGItaW1hZ2VbZGF0YS10b29sc2V0LWJsb2Nrcy1pbWFnZT0iZWRkNTcxZGVmNzlkYjc1NDRhOWQ4OTdiYjMwZjEwZDMiXSBpbWcgeyBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCAyMjEsIDIyMSwgMjIxLCAxICk7IH0gLnRiLWltYWdle3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246dHJhbnNmb3JtIDAuMjVzIGVhc2V9LndwLWJsb2NrLWltYWdlIC50Yi1pbWFnZS5hbGlnbmNlbnRlcnttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvfS50Yi1pbWFnZSBpbWd7bWF4LXdpZH RoOjEwMCU7aGVpZ2h0OmF1dG87d2lkdGg6YXV0bzt0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjI1cyBlYXNlfS50Yi1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbi1maXQtdG8taW1hZ2V7ZGlzcGxheTp0YWJsZX0udGItaW1hZ2UgLnRiLWltYWdlLWNhcHRpb24tZml0LXRvLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9ue2Rpc3BsYXk6dGFibGUtY2FwdGlvbjtjYXB0aW9uLXNpZGU6Ym90dG9tfSAudGItaW1hZ2VbZGF0YS10b29sc2V0LWJsb2Nrcy1pbWFnZT0iYzY2YzcxNjU4YzdmNDllMGU1NGUzZWI1NTMzMGE1YTIiXSB7IG1heC13aWR0aDogMTAwJTsgfSAudGItaW1hZ2VbZGF0YS10b29sc2V0LWJsb2Nrcy1pbWFnZT0iYzY2YzcxNjU4YzdmNDllMGU1NGUzZWI1NTMzMGE1YTIiXSBpbWcgeyBtYXJnaW4tYm90dG9tOiAwO2JvcmRlcjogMXB4IHNvbGlkIHJnYmEoIDIyMiwgMjIyLCAyMjIsIDEgKTsgfSAudGItaW1hZ2V7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4yNXMgZWFzZX0ud3AtYmxvY2staW1hZ2UgLnRiLWltYWdlLmFsaWduY2VudGVye21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG99LnRiLWltYWdlIGltZ3ttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvO3RyYW5zaXRpb246dHJhbnNmb3JtIDAuMjVzIGVhc2V9LnRiLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9uLWZpdC10by1pbWFnZXtkaXNwbGF5OnRhYmxlfS50Yi1pbWFnZSAudGItaW1hZ2UtY2FwdG lvbi1maXQtdG8taW1hZ2UgLnRiLWltYWdlLWNhcHRpb257ZGlzcGxheTp0YWJsZS1jYXB0aW9uO2NhcHRpb24tc2lkZTpib3R0b219IC50Yi1pbWFnZVtkYXRhLXRvb2xzZXQtYmxvY2tzLWltYWdlPSI4NzljNGU2MTg0ZWM5OWYxNjMyZTc1MjM1MjJhNmUxYSJdIHsgbWF4LXdpZHRoOiAxMDAlOyB9IC50Yi1pbWFnZVtkYXRhLXRvb2xzZXQtYmxvY2tzLWltYWdlPSI4NzljNGU2MTg0ZWM5OWYxNjMyZTc1MjM1MjJhNmUxYSJdIGltZyB7IGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoIDIyMSwgMjIxLCAyMjEsIDEgKTsgfSAudGItaW1hZ2V7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4yNXMgZWFzZX0ud3AtYmxvY2staW1hZ2UgLnRiLWltYWdlLmFsaWduY2VudGVye21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG99LnRiLWltYWdlIGltZ3ttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvO3RyYW5zaXRpb246dHJhbnNmb3JtIDAuMjVzIGVhc2V9LnRiLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9uLWZpdC10by1pbWFnZXtkaXNwbGF5OnRhYmxlfS50Yi1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbi1maXQtdG8taW1hZ2UgLnRiLWltYWdlLWNhcHRpb257ZGlzcGxheTp0YWJsZS1jYXB0aW9uO2NhcHRpb24tc2lkZTpib3R0b219IC50Yi1pbWFnZVtkYXRhLXRvb2xzZXQtYmxvY2tzLWltYWdlPSJhZGFhNDM5MjAyMjc0YWE1ZmVlYTMzNTVjOGI3ZmRjOCJdIHsgbWF4LXdpZH RoOiAxMDAlOyB9IC50Yi1pbWFnZVtkYXRhLXRvb2xzZXQtYmxvY2tzLWltYWdlPSJhZGFhNDM5MjAyMjc0YWE1ZmVlYTMzNTVjOGI3ZmRjOCJdIGltZyB7IGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoIDIyMSwgMjIxLCAyMjEsIDEgKTsgfSBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc4MXB4KSB7IC50Yi1pbWFnZXtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjI1cyBlYXNlfS53cC1ibG9jay1pbWFnZSAudGItaW1hZ2UuYWxpZ25jZW50ZXJ7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0b30udGItaW1hZ2UgaW1ne21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvO3dpZHRoOmF1dG87dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4yNXMgZWFzZX0udGItaW1hZ2UgLnRiLWltYWdlLWNhcHRpb24tZml0LXRvLWltYWdle2Rpc3BsYXk6dGFibGV9LnRiLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9uLWZpdC10by1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbntkaXNwbGF5OnRhYmxlLWNhcHRpb247Y2FwdGlvbi1zaWRlOmJvdHRvbX0udGItaW1hZ2V7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4yNXMgZWFzZX0ud3AtYmxvY2staW1hZ2UgLnRiLWltYWdlLmFsaWduY2VudGVye21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG99LnRiLWltYWdlIGltZ3ttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvO3RyYW5zaXRpb246dH JhbnNmb3JtIDAuMjVzIGVhc2V9LnRiLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9uLWZpdC10by1pbWFnZXtkaXNwbGF5OnRhYmxlfS50Yi1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbi1maXQtdG8taW1hZ2UgLnRiLWltYWdlLWNhcHRpb257ZGlzcGxheTp0YWJsZS1jYXB0aW9uO2NhcHRpb24tc2lkZTpib3R0b219LnRiLWltYWdle3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246dHJhbnNmb3JtIDAuMjVzIGVhc2V9LndwLWJsb2NrLWltYWdlIC50Yi1pbWFnZS5hbGlnbmNlbnRlcnttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvfS50Yi1pbWFnZSBpbWd7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87d2lkdGg6YXV0bzt0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjI1cyBlYXNlfS50Yi1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbi1maXQtdG8taW1hZ2V7ZGlzcGxheTp0YWJsZX0udGItaW1hZ2UgLnRiLWltYWdlLWNhcHRpb24tZml0LXRvLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9ue2Rpc3BsYXk6dGFibGUtY2FwdGlvbjtjYXB0aW9uLXNpZGU6Ym90dG9tfS50Yi1pbWFnZXtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjI1cyBlYXNlfS53cC1ibG9jay1pbWFnZSAudGItaW1hZ2UuYWxpZ25jZW50ZXJ7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0b30udGItaW1hZ2UgaW1ne21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvO3dpZHRoOmF1dG87dHJhbnNpdGlvbjp0cmFuc2 Zvcm0gMC4yNXMgZWFzZX0udGItaW1hZ2UgLnRiLWltYWdlLWNhcHRpb24tZml0LXRvLWltYWdle2Rpc3BsYXk6dGFibGV9LnRiLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9uLWZpdC10by1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbntkaXNwbGF5OnRhYmxlLWNhcHRpb247Y2FwdGlvbi1zaWRlOmJvdHRvbX0gfSBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7IC50Yi1pbWFnZXtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjI1cyBlYXNlfS53cC1ibG9jay1pbWFnZSAudGItaW1hZ2UuYWxpZ25jZW50ZXJ7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0b30udGItaW1hZ2UgaW1ne21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvO3dpZHRoOmF1dG87dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4yNXMgZWFzZX0udGItaW1hZ2UgLnRiLWltYWdlLWNhcHRpb24tZml0LXRvLWltYWdle2Rpc3BsYXk6dGFibGV9LnRiLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9uLWZpdC10by1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbntkaXNwbGF5OnRhYmxlLWNhcHRpb247Y2FwdGlvbi1zaWRlOmJvdHRvbX0udGItaW1hZ2V7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4yNXMgZWFzZX0ud3AtYmxvY2staW1hZ2UgLnRiLWltYWdlLmFsaWduY2VudGVye21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG99LnRiLWltYWdlIGltZ3ttYXgtd2lkdGg6MT AwJTtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvO3RyYW5zaXRpb246dHJhbnNmb3JtIDAuMjVzIGVhc2V9LnRiLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9uLWZpdC10by1pbWFnZXtkaXNwbGF5OnRhYmxlfS50Yi1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbi1maXQtdG8taW1hZ2UgLnRiLWltYWdlLWNhcHRpb257ZGlzcGxheTp0YWJsZS1jYXB0aW9uO2NhcHRpb24tc2lkZTpib3R0b219LnRiLWltYWdle3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246dHJhbnNmb3JtIDAuMjVzIGVhc2V9LndwLWJsb2NrLWltYWdlIC50Yi1pbWFnZS5hbGlnbmNlbnRlcnttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvfS50Yi1pbWFnZSBpbWd7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87d2lkdGg6YXV0bzt0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjI1cyBlYXNlfS50Yi1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbi1maXQtdG8taW1hZ2V7ZGlzcGxheTp0YWJsZX0udGItaW1hZ2UgLnRiLWltYWdlLWNhcHRpb24tZml0LXRvLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9ue2Rpc3BsYXk6dGFibGUtY2FwdGlvbjtjYXB0aW9uLXNpZGU6Ym90dG9tfS50Yi1pbWFnZXtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjI1cyBlYXNlfS53cC1ibG9jay1pbWFnZSAudGItaW1hZ2UuYWxpZ25jZW50ZXJ7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0b30udGItaW1hZ2UgaW1ne21heC13aWR0aDoxMDAlO2 hlaWdodDphdXRvO3dpZHRoOmF1dG87dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4yNXMgZWFzZX0udGItaW1hZ2UgLnRiLWltYWdlLWNhcHRpb24tZml0LXRvLWltYWdle2Rpc3BsYXk6dGFibGV9LnRiLWltYWdlIC50Yi1pbWFnZS1jYXB0aW9uLWZpdC10by1pbWFnZSAudGItaW1hZ2UtY2FwdGlvbntkaXNwbGF5OnRhYmxlLWNhcHRpb247Y2FwdGlvbi1zaWRlOmJvdHRvbX0gfSA =
WPML хранит язык, перевод, флаг страны, и струнные переводы в отдельных таблицах.Вы можете просмотреть их с помощью редактора базы данных, такого как phpMyAdmin.
На этой странице:
Модель базы данных WPML
На следующей диаграмме показана модель таблиц, используемых WPML:
Схема таблиц базы данных WPML
Таблица языков и переводов
Таблица, содержащая информацию о языке и переводе, называется icl_translations .
- Каждый элемент контента сайта, настроенный как переводимый (сообщение, страница, тег, категория, настраиваемый тип сообщения и настраиваемые таксономии), имеет запись в этой таблице.Примечание. Комментарии не переводятся, но для них есть запись в icl_translations, поскольку для них назначена языковая информация.
- Запись указывает язык элемента и группу перевода (тип элемента), к которой он принадлежит.
- Записи одного и того же кластера преобразования имеют одно и то же значение в столбцах element_type и trid.
- Запись без исходного языка ( NULL ) в том же кластере является исходной записью.
Имеет следующие строки:
- translation_id — порядковый номер
- element_type — тип элемента.Это значение объясняется и извлекается в хуке wpml_element_type.
- element_id — идентификатор элемента ( post_id для типов записей, term_taxonomy_id для терминов таксономии)
- trid — идентификатор группы перевода
- language_code — код языка элемента
- source_language_code — если переведено, язык исходного элемента
Например, если у нас есть английское сообщение с ID = 3, которое переведено на испанский, а испанский перевод имеет ID = 7, таблица icl_translations будет выглядеть так:
translation_id | element_type | element_id | trid | language_code | source_language_code |
---|---|---|---|---|---|
1 | post_post | 3 905 905 905 905 905 905 7 | 2 | es | en |
* Поскольку две записи имеют одинаковое значение trid для trid, они являются переводами друг друга.Сама стоимость не важна.
icl_translations WPML и связанные таблицы
Таблица флагов страны
WPML поставляется с большой коллекцией флагов стран. Имейте в виду, что связывание языков со странами может быть проблематичным. В разных странах говорят на многих языках (иногда по-разному). Тем не менее, флаги стран по-прежнему являются полезной визуальной подсказкой и помогают посетителям легко определять свой язык.
Флаги стран
WPML хранятся в каталоге res / flags , а таблица icl_flags указывает, какой флаг вернуть для каждой страны.Столбцы таблицы icl_flags :
- id — серийный номер
- lang_code — код языка
- flag — имя файла флага
- from_template — «0»: взять флаг из папки res / flags WPML, « 1 ”: возьмите флаг из каталога темы
Если вы хотите использовать другой флаг, вы можете загрузить файл настраиваемого флага, перейдя в WPML → языков и нажав Изменить языки .
Добавление пользовательского флага
Вы можете использовать ту же страницу Edit Languages , чтобы добавить собственный язык.
Таблица трансляции строк
Большинство сайтов WordPress содержат некоторые строки, которые не относятся ни к какому элементу (сообщение, страница, тег, категория), но все же нуждаются в переводе, например, слоган блога.
WPML включает механизм под названием String Translation для обработки этих строк.
Строки хранятся в таблице icl_strings со следующими столбцами:
- id — серийный номер
- язык — язык
- контекст — контекст строки (указывает, к чему принадлежит строка)
- name — имя строки
- value — строки значение (его содержимое)
- string_package_id — ID пакета, которому принадлежит строка.
- type — тип редактора, который будет использоваться при редактировании строки через редактор перевода (LINE, AREA или VISUAL)
- title — заголовок строки, отображаемой в редакторе перевода
- status — статус перевода, указывающий, полностью ли переведена строка на все языки
- gettext_context — контекст, установленный в функции gettext, например _x
- domain_name_context_md5 — уникальный ключ для повышения производительности поиска
Переводы строки хранятся в 900 05 icl_string_translations таблица:
- id — серийный номер
- string_id — ID (порядковый номер) переводимой строки
- language — язык перевода
- status — статус перевода (завершен / не полный)
- значение — сам перевод
- translator_id — id переводчика
- translation_service — сервис перевода, используемый для перевода строки.