Мета-таблица больших сообщений в WordPress? — Вот как очистить »WebNots

Большинство хостинговых компаний предлагают установку WordPress с помощью настройки cPanel. Он использует базу данных MySQL в бэкэнде и phpMyAdmin для редактирования содержимого базы данных. У вас также будут инструменты в cPanel для управления правами пользователей и резервного копирования вашей базы данных. Насколько мы проверили, это такая же настройка с популярными хостинговыми компаниями, такими как SiteGround, Bluehost и HostGator, если вы не используете специальный выделенный параметр. Вы можете заметить, что размер базы данных будет расти быстрее с публикуемым вами контентом. В частности, несколько таблиц в базе данных MySQL будут расти намного быстрее по сравнению с другими таблицами. Post meta — одна из таких таблиц, и в этой статье мы обсудим, как очистить таблицу wp_postmeta в WordPress.

Что такое метаданные публикации?

Прежде чем мы перейдем к процессу очистки, необходимо разобраться в метаданных. Это своего рода информационные данные, которые используются для разных целей. WordPress хранит связанный с публикациями контент в двух таблицах wp_posts и wp_postmeta. Таблица сообщений wp_posts содержит все детали, связанные с сообщением, автором, датами, паролем, статусом и т. Д. В то время как мета-таблица wp_postmeta содержит ДОПОЛНИТЕЛЬНЫЕ информационные данные.

Примеры мета-таблицы сообщений

Любое дополнительное мета-поле, которое вы видите в редакторе сообщений, добавит данные в мета-таблицу сообщений. Ниже приведены некоторые из наиболее известных примеров:

Мета-данные плагина Yoast SEO
Мета-данные плагина Yoast SEO
Обзор метаданных плагина
Обзор метаданных плагина
  • Коммерческие темы добавляют мета-блоки для настроек макета и других функций.
Метаданные темы
Метаданные темы
  • Пользовательские поля, созданные плагинами и темами.
Настраиваемые поля в сообщениях
Настраиваемые поля в сообщениях

Хотя вы можете отключить эти мета-блоки в редакторе Гутенберга, каждое мета-поле будет создавать записи в бэкэнд-таблице.

Проверить размер таблицы wp_postmeta

По умолчанию таблицы MySQL будут иметь префикс wp_. Например, таблица содержимого сообщения будет похожа на wp_posts, а мета сообщения будет похожа на wp_postmeta. Однако, если вы изменили префикс во время установки, вы увидите другой префикс в своей базе данных.

  • Войдите в свою учетную запись хостинга cPanel.
  • Щелкните приложение phpMyAdmin.
  • Выберите свою базу данных и отсортируйте ее по столбцу «Размер».
  • Вы можете найти самый большой стол вверху.
Проверка размера таблицы в базе данных WordPress
Проверка размера таблицы в базе данных WordPress

Как вы можете видеть на скриншоте выше, размер таблицы сообщений составляет 26,6 МБ, а размер мета-таблицы сообщений — 109,8 МБ. Это явный предупреждающий символ о том, что что-то влияет на размер мета-таблицы сообщений, и вам нужно работать над очисткой.

Структура таблицы wp_postmeta

Опубликовать мета-таблицу имеет четыре поля со структурой ниже. Мета-идентификатор, идентификатор сообщения, мета-ключ и мета-значения — это четыре поля, доступные в таблице. Вы должны сосредоточиться на meta_key, чтобы узнать, какой плагин создает записи в таблице.

Структура мета-таблицы сообщений WordPress
Структура мета-таблицы сообщений WordPress

Выявление первопричины большого размера

Важно сначала понять, что заставляет мета поста увеличиваться в размерах. Как объясняется в приведенных выше примерах, вы можете найти множество других причин.

  • Плагины, которые добавляют мета-блоки в редактор сообщений, такие как плагины SEO, обзоры и социальные сети.
  • Социальные плагины, которые добавляют индивидуальные настройки для каждого сообщения.
  • Плагины форумов, такие как bbPress, и плагины интернет-магазинов, такие как WooCommerce.
  • Темы, которые добавляют мета-блоки для настроек макета, фона и формата.

Помните, что большой размер базы данных создаст проблемы, такие как медленный веб-сайт и импорт на локальный сервер или во время миграции в другую хостинговую компанию.

Проблемы с плагинами, которые добавляют мета-боксы

Есть много плагинов, которые создают записи в мета-таблице сообщений.

Обзор плагинов

В приведенном выше примере основной причиной был плагин WP Review, который добавляет более 30 записей для каждого идентификатора сообщения.

Просмотр данных плагина в мета-таблице сообщений
Просмотр данных плагина в мета-таблице сообщений

Более серьезная проблема заключается в том, что плагин добавляет записи, связанные с обзором, в каждое сообщение независимо от того, используете ли вы обзор в публикации. Если у вас есть 10 обзорных сообщений в блоге, который содержит 10000 сообщений, вам необходимо удалить плагин обзора, чтобы защитить свой сайт.

Плагины SEO

Та же проблема есть с Yoast и любыми другими плагинами SEO. Однако понятно, что вам нужно иметь SEO-заголовок и описание для каждого сообщения. Поэтому дважды подумайте, прежде чем устанавливать какой-либо плагин с мета-блоками в редакторе для управления настройками.

Плагины для больших магазинов и форумов

По своей природе вы не должны объединять магазин или форум с существующим сайтом блога. Это резко снизит скорость и увеличит размер в различных таблицах, включая wp_posts и wp_postmeta. Например, популярный плагин WooCommerce добавит сотни тысяч записей в мета-таблицу сообщений для данных биллинга, страны и информации о клиенте. Вы всегда можете разместить свой магазин в поддомене или подкаталоге в другой базе данных, чтобы предотвратить влияние на ваш основной блог.

Связанные сообщения и социальные плагины

Связанные сообщения и социальные плагины увеличат нагрузку на базу данных из-за запросов. В частности, динамические связанные сообщения достаточно опасны, чтобы выходить за рамки ограничений вашей учетной записи хостинга. Попробуйте использовать посты, связанные с встроенной темой, или сторонние сервисы, такие как Taboola, Outbrain или объявления с соответствующим содержанием AdSense. Хотя скорость загрузки сайта будет несколько снижена, вы можете безопасно защитить свою базу данных.

Коммерческие темы с множеством полей в редакторе

Даже в таких легких темах, как GeneratePress, в редакторе есть много мета-блоков. Эти мета-поля добавят запись к каждому сообщению и увеличат размер вашей базы данных. Поэтому проверьте и протестируйте свой сайт с самого начала, прежде чем планировать сборку. Мы рекомендуем вам сохранить глобальные настройки на уровне сайта, а не настраивать для каждого сообщения в редакторе.

Слишком много изображений

Другой причиной роста количества мета постов является использование слишком большого количества изображений. WordPress хранит метаданные вложения, детали сжатия и детали alt-тегов в мета-таблице сообщений.

Метаданные изображения
Метаданные изображения

Когда у вас есть большое количество изображений, это добавит к увеличенному размеру вашей таблицы wp_postmeta с деталями alt и метаданных. Кроме того, если у вас есть плагины сжатия изображений, такие как WP Smush, они также добавят записи в таблицу.

Настраиваемые поля

Большинство вышеупомянутых плагинов создают настраиваемые поля для использования в серверной части. WordPress хранит эти настраиваемые поля в таблице post_metadata, таким образом увеличивая размер вашей базы данных. Проблема здесь в том, что даже если вы удалите и удалите плагины, эти настраиваемые поля в старых сообщениях не будут удалены. Вы должны вручную удалить их из редактора сообщений или удалить напрямую из базы данных.

Резервное копирование перед очисткой

Рекомендуется всегда делать резервную копию своей базы данных перед выполнением каких-либо необратимых действий.

  • Когда вы находитесь в phpMyAdmin, перейдите на вкладку «Экспорт».
  • Вы можете быстро загрузить базу данных в формате SQL с помощью функции «Быстро — отображать только минимальные параметры».
  • Однако мы рекомендуем вам выбрать «Пользовательский — отображать все возможные параметры» и выбрать сжатие «gzipped», чтобы загрузить базу данных в сжатом формате GZIP.
Экспорт резервной копии базы данных из phpMyAdmin
Экспорт резервной копии базы данных из phpMyAdmin

Очистить таблицу wp_postmeta

Теперь, когда вы знаете, что такое мета поста и данные, хранящиеся в таблице wp_postmeta.

  • Мы настоятельно рекомендуем вам удалить плагины, которые добавляют записи для каждого сообщения. Лучший вариант — переместить плагины в отдельную установку, чтобы вы могли разделить базу данных для управления размером. Например, вы можете иметь магазин или обзоры в отдельной установке, чтобы плагин обзора WooCommerce не заполнял записи в мета-таблице сообщений. То же самое применимо и к форуму bbPress.
  • Проверьте, можете ли вы изменить тему на простую и чистую, которая не сбрасывает данные в серверной базе данных.

Помните, что помимо проблемы с базой данных, многие темы и плагины будут создавать миниатюры для демонстрации меньших изображений на боковой панели и в области нижнего колонтитула. Обычно для каждого загружаемого изображения используется 10 эскизов. Это займет слишком много места для хранения и замедлит работу всего вашего сайта. Итак, выбирайте тему и плагины с умом, исходя из ваших потребностей, и не смотрите на все те функции, которые вы никогда не используете.

Удаление неиспользуемых мета-записей сообщений

Существуют также плагины оптимизации базы данных, такие как WP Optimize и WP Rocket, позволяющие очистить базу данных. Однако ни один из этих плагинов не удалит неиспользуемые записи из таблицы wp_postmeta. Многие плагины и темы не удаляют записи в базе данных даже после того, как вы удалите их со своего сайта. Чтобы найти неиспользуемые записи, вы можете проверить значение meta_key для любых отдельных сообщений в таблице wp_postmeta.

Воспользуйтесь приведенным ниже запросом на вкладке SQL для фильтрации и выясните, сколько записей для ключевого слова. Ниже запрос фильтрует записи из плагина WP Smush с ключевым словом% smpro%.

ВЫБЕРИТЕ * ИЗ wp_postmeta ГДЕ `meta_key` LIKE ‘% smpro%’

Результат запроса из мета-таблицы публикации
Результат запроса из мета-таблицы публикации

Вы можете использовать такие ключевые слова, как заказ для WooCommerce, обзор для поиска отзывов и bbp для записей bbPress. Используйте ключевое слово, которое плагин использует в таблице, чтобы узнать, сколько записей плагин или тема создал в мета-таблице сообщений.

Как только вы закончите поиск неиспользуемых записей, пора их удалить. Используйте приведенный ниже запрос, чтобы удалить все записи, содержащие ключевое слово «обзор». Замените ключевое слово, подходящее для вашего случая, чтобы удалить записи из мета-таблицы сообщений.

УДАЛИТЬ ИЗ `wp_postmeta` ГДЕ` meta_key` LIKE ‘% review%’;

Удаление настраиваемых полей

Чтобы удалить настраиваемые поля, вы должны знать название и где использовался список сообщений. Самый простой способ — удалить их из базы данных, используя аналогичный код, как указано выше. Если вы беспокоитесь об удалении в базе данных, отредактируйте сообщения с настраиваемыми полями и удалите их вручную. Однако вы должны удалять их по одному в каждом посте, что отнимает много времени.

Если вы знаете время удаления плагина или изменения темы, вы можете найти сообщения, опубликованные до этого времени. Это поможет вам сосредоточиться на правильных сообщениях, содержащих неиспользуемые настраиваемые поля.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *