0

我有 CMB2 的自定义帖子类型,我不知道如何按 ID 删除组帖子元。

function get_all_ids($json) {
$prefix = '_atom_';

$all = get_posts(array(
    'posts_per_page' => -1,
    'post_type' => 'atomic_spektakl',
    'post_status' => 'any, draft, publish',
    'meta_key' => 'integracja_id',
    'meta_value !=' => '',
));

foreach($json as $item) {
    $eventApiIDs[] = $item->id;
}


foreach($all as $post) {
    $res = $post->ID;
    $eventPostValue = get_post_meta($res);
    $eventPostValueData = unserialize($eventPostValue['wiki_test_repeat_group'][0]);
    foreach($eventPostValueData as $epvd) {
        $eventPostIDs[] = $epvd['event_id'];
    }
}
$eventValueEmpty = [
    $prefix . 'date' => '',
    $prefix . 'time' => '',
    $prefix . 'event_ticket' => '',
    'event_id' => '',
];
foreach($eventPostIDs as $evp) {
    if(!in_array($evp, $eventApiIDs, true)) {
        delete_post_meta($res, 'wiki_test_repeat_group');
    } 
}

}

当我对不在第二个数组中的值尝试 delete_post_meta 时,什么都不会发生。如何从 ID 下的可重复字段中删除组?

这就是我将数据放入表中的方式,这里一切正常,但我不想再删除它了。

                    $eventValue = get_post_meta($res, 'wiki_test_repeat_group', true);

                $eventValue[$i] = [
                    $prefix . 'date' => $eventDate,
                    $prefix . 'time' => $eventTime,
                    $prefix . 'event_ticket' => $event->reservationForm,
                    'event_id' => $event->id,
                ];

                if($eventValue[$i]['event_id'] == $event->id) {
                    update_post_meta($res, 'wiki_test_repeat_group', $eventValue);
                }
4

0 回答 0