WordPress - запрос не работает - PullRequest
0 голосов
/ 04 мая 2018

У меня проблемы с WordPress-запросом.

Мне нужно изменить значение meta_value "_regular_price" через запрос с указанным post_id.

Код для получения post_id работает хорошо, но запрос не обновляет свою обычную цену.

Вот мой сценарий ...

foreach (get_zomatik() as $key => $value)
{
    $producto = $value->nombre;
    $sku      = $value->codigo;
    $stock    = $value->stock;
    $precio   = $value->precio;

    // prod_id works well...
    $prod_id  = $wpdb->get_col($wpdb->prepare("SELECT post_id FROM wp_postmeta WHERE meta_key='_sku' AND meta_value='%s'", $sku))[0];
    echo $prod_id . "<br>";

    // this doesn't work... :(
    $sql = "UPDATE wp_postmeta SET meta_value='".$precio."' WHERE meta_key='_regular_price' AND post_id='".$prod_id."'";
    $wpdb->query($sql);
}

Что я делаю не так?

1 Ответ

0 голосов
/ 04 мая 2018

Я не могу говорить с необработанным запросом, который генерирует update_post_meta.

Но - поскольку вы используете интерфейс "post meta", который WordPress неявно определил, неплохо обновить его, используя их функции.

Итак, что-то вроде:

update_post_meta($prod_id, '_regular_price', $precio);

в вашем цикле должен позаботиться о создании и выполнении правильного запроса для обновления мета-записи _regular_price для данного $prod_id.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...