SQL-запросы ломают WordPress чаще, чем плохая тема: 5 ошибок в работе с БД
Проблема почти всегда не в самом SQL, а в том, как его пишут. Для WordPress критичны три вещи: префикс таблиц, типы данных и экранирование значений. Если руками собрать запрос через строку, одна лишняя кавычка или пустое поле уже дадут мусор в результате или ошибку.
Запомните базовые правила:
— не хардкодьте wp_ — префикс может быть любым;
— не подставляйте переменные в SQL напрямую;
— для чисел используйте приведение типа, для строк — подготовленные запросы;
— не делайте SELECT * без необходимости, особенно на больших таблицах.
Отдельная ловушка — JOIN’ы на wp_postmeta и wp_usermeta. Эти таблицы быстро разрастаются, и неудачный запрос начинает тормозить весь сайт. Если нужен поиск по метаполям, сначала проверьте индекс и подумайте, можно ли обойтись более узким фильтром. Иногда один лишний JOIN стоит дороже, чем кажется.
Если запрос нужен не один раз, сохраните его как шаблон и проверьте на копии базы: сначала логика, потом нагрузка, потом запуск в бою.
Работа с БД WordPress
@wp_database_mastery_ww
SQL-запросы ломают WordPress чаще, чем плохая тема: 5 ошибок в работе с БД
Этот пост опубликован в Telegram-канале Работа с БД WordPress. Подписаться можно по ссылке: @wp_database_mastery_ww.