Поддержка Проблемы и решения update_post_meta и производительность

  • Вопрос о производительности.
    Предположим есть записи к которой нужно прекрепить 50 метаполей.
    Насколько я понимаю update_post_meta() делает 50 запросов к БД, что не есть хорошо…
    Можно идти по другому пути. Объединить всё данные в массив и тогда метаполе одно, а не 50… Но тогда начинаются недовольства клиентов. Они часть инфы заполняют обычным способом, а часть через WP Allimport, который моментально «теряется» и не поймёт как именно импортировать данные.

    В общем вопрос — как наиболее эффективно с точки зрения производительности крепить к посту, записывать и извлекать 50 либо 100 разнотипных данных (в одном метаполе, в нескольких, как лучше формировать запросы). Поделитесь пожалуйста вашим опытом.

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • По своему опыту легче либо переделать структуру, чтоб было меньше полей, если это возможно конечно.
    Либо оставить 50 раздельных полей.
    Объединять в 1 чревато проблемой, что при сохранении потеряются данные если лимит max_input_vars будет превышен.

    На производительность, сильно 50 полей не повлияют

    Модератор Yuri

    (@yube)

    Насколько я понимаю update_post_meta() делает 50 запросов к БД, что не есть хорошо…

    Поскольку это, как правило, происходит очень редко, то не критично.

    А что на счёт извлечения данных? Как лучше вытаскивать большое число метаполей? get_post_meta или как-то иначе?

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «update_post_meta и производительность» закрыта для новых ответов.