Вставка функции wpdb не работает

Он просто ничего не вставит, если я повторю его, он покажет все хорошо, но он не будет вставлять ничего в базу данных. Имя таблицы правильное. Код –

global $wpdb; $meta2 = get_post_meta($post->ID, 'customFields', true); $metas2 = explode(",", $meta2); foreach ($meta2 as $meta) { $wpdb->query( $wpdb->prepare("INSERT INTO customfields(values) VALUES('$meta')")); } 

Код находится внутри файла theme functions.php.

Попробуйте использовать метод $wpdb->insert() вместо необработанного запроса. Использование функций / методов рекомендуется для взаимодействия с базой данных по необработанным запросам, если это абсолютно невозможно.

Вам даже не нужно использовать класс $ wpdb. update_post_meta () отлично справится с этой ситуацией.

Я предполагаю, что вы взорвали разделенный запятыми список чисел и хотите вставить их обратно в виде массива.

 $meta_key = 'customFields'; $item = $post->ID; $numbers = get_post_meta( $item, $meta_key, true); $array = explode(",", $numbers ); for ( $i=0; $i < count( $array ); $i++ ) { update_post_meta( $item, $meta_key[$i], $numbers[$i] ); } 

Это добавит массив в настраиваемое поле, которое выглядит так:

 customFields[0] => first_item, customFields[1] => second_item and so on...