Задать вопрос
@ligisayan

Как задать значение по умолчанию для нового мета-поля в wordpress?

Всем привет! Есть сайт на wordpress с большим количеством объявлений (тип записи, созданный темой). Я добавил для объявлений новое произвольное мета-поле cp_wholespare, которое имеет только 2 значения (Запчасть|автомобиль целиком), которое при редактировании выбирается радиокнопкой.
Проблема в том, что в теле объявления хоть и выбрано активным первое из имеющихся значений по умолчанию (запчасть), но в базе данных оно не прописано и соответственно при фильтрации по этому полю не ищет.

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

SELECT * FROM `wp_postmeta`

meta_id  post_id  meta_key       meta_value
459584   20025    cp_wholespare  автомобиль целиком
459621   20018    cp_wholespare  Запчасть


Вопрос: как задать значение по умолчанию для этого поля сразу для всех объявлений?

Все объявления у меня получилось выбрать вот так:
SELECT *
FROM wp_posts 
INNER JOIN wp_postmeta
ON wp_posts.ID = wp_postmeta.post_id
WHERE 1=1
AND wp_posts.post_type = 'ad_listing'
AND wp_posts.post_status = 'publish'
AND wp_postmeta.meta_key = 'cp_category'

А как теперь всем присвоить мета-поле 'cp_wholespare' со значением 'Запчасть'? Так?
UPDATE *
FROM wp_posts 
INNER JOIN wp_postmeta
ON wp_posts.ID = wp_postmeta.post_id
WHERE 1=1
AND wp_posts.post_type = 'ad_listing'
AND wp_posts.post_status = 'publish'
AND wp_postmeta.meta_key = 'cp_category'
ON wp_postmeta.meta_key = 'cp_wholespare'
SET wp_postmeta.meta_value = 'Запчасть'
  • Вопрос задан
  • 133 просмотра
Подписаться 1 Средний 2 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы