2012-06-22 2 views
0

Я пишу плагин wordpress для моего сайта, который заменяет (или добавляет, если он пуст) значение настраиваемого поля на основе значение другого настраиваемого поля под тем же сообщением.Wordpress: Заменить значение настраиваемого поля на основе значения другого настраиваемого поля

Пример: у меня будет список с запятой, разделенных значениями, как, что:

яблока, красным банана, желтым киви, зеленый т.д.

Когда я побегу сценарий, он будет найти сообщение с custom_field_fruit, где его значение «яблоко», и изменит значение custom_field_color на красный, в том же сообщении, конечно. Затем он обработает вторую строку списка и найдет сообщение с custom_field_fruit = banana и изменит custom_field_color = желтый и т. Д.

Итак, мне нужна помощь с жесткой частью. Я думаю, что это больше вопрос mySQL, чем Wordpress или даже вопрос PHP. Я назначаю две переменные $ VALUE1 и $ VALUE2 (фрукты, цвет). Я делаю это полностью с помощью запроса mySQL для замены полей?

Если да, может кто-то перевести это на запрос mySQL? Найти сообщение, где custom_field_fruit - $ VALUE1 и заменить значение custom_field_color на $ VALUE2 под тем же сообщением.

Любые идеи о том, как я могу это сделать, ценятся. Спасибо.

+0

Возможно, люди на http://wordpress.stackexchange.com/ могут обрабатывать лучше/быстрее схему базы данных wordpress :) – biziclop

ответ

0

Я думаю, что проблема будет решена лучше с помощью сочетания PHP и SQL. Вот моя попытка. Словарь должен быть заполнен до конца ваших пар ключ-значение:

$dict = ["apple" => "red", 
     "banana" => "yellow"]; 

foreach ($dict as $fruit => $color) 
    mysqli_query("UPDATE wp_posts 
        SET custom_field_color = '$color' 
        WHERE custom_field_fruit = '$fruit'"); 

Вы можете даже сделать обработку в объеме, вместо того чтобы идти по строкам!

 Смежные вопросы

  • Нет связанных вопросов^_^