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

Как сделать запрос в базу данных к termmeta для изменения нужной строки?

Добрый день!
Необходимо делать запрос в базу данных после определенной проверки страницы (произвольная таксономия), если условие выполняется то должен происходить запрос в базу данных, который меняет значение

Делаю так:
$id = $term->term_id; 
$key = "dts"; 
$value = "0";

global $wpdb;
$wpdb->query( $wpdb->prepare( 
    "
        INSERT INTO $wpdb->termmeta
        ( term_id, meta_key, meta_value )
        VALUES ( %d, %s, %s )
    ", 
    $id, 
    $key, 
    $value 
) );


но вместо замены значения на 0, создается еще одна строка в базе со значением 0, а старая остается
  • Вопрос задан
  • 31 просмотр
Подписаться 1 Средний Комментировать
Решения вопроса 1
@electronikprm Автор вопроса
Нашёл правильное решение

global $wpdb;
$wpdb->update( 
    $wpdb->prefix . 'termmeta', // указываем таблицу
    array('meta_value' => '0'), // поменяем имя 
    array( // где 
        'term_id' => $term->term_id,
        'meta_key' => 'dts'
    ), 
    array( '%s' ),
    array( // формат для «где»
        '%d',
        '%s'
    )
);


источник https://misha.agency/wordpress/interfacing-with-th...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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