Делаю создание записи через php, и сую туда проверку - если запись по параметрам найдена, тогда параметр "ОКР" я изменяю, но если не найдена запись - тогда я её добавляю. Проблема в том, что записи при добавление новых - перезаписываются, что делать? Плагин для кэширования - убрал, но не помогло.
$args = array(
'post_type' => 'users',
'post_status' => 'publish',
'posts_per_page' => 1, // Находим только одну запись
'title' => $val['Фамилия_Имя_М'], // Заголовок
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'ДР_М',
'value' => $val['ДР_М'],
'compare' => '='
)
),
);
$query = new WP_Query($args);
if ($query->have_posts()) {
// Запись с указанными параметрами найдена
while ($query->have_posts()) {
$query->the_post();
$okr = get_post_meta( get_the_ID(), 'ОКР', true );
$newOKR = $okr + $val['ОКР'];
update_post_meta( get_the_ID(), 'ОКР', $newOKR);
}
} else {
$new_post = array(
'post_title' => $val['Фамилия_Имя_М'], // Заголовок новой записи
'post_type' => 'users', // Тип записи
'post_status' => 'publish' // Статус публикации
);
$new_post_id = wp_insert_post($new_post);
foreach($val as $k1 => $v)
{
add_post_meta($new_post_id, $k1, $v);
}
}