get_fields не видит значений полей
Небольшая предыстория: В типе поста были кастомные поля wp, была необходимость перенести из них значения в поля ACF, перенес с помощью update_post_meta в цикле перебрав результаты wp_query. В итоге в админке я значения этих полей вижу, а вот get_fields их получить не может. Если просто захожу в пост и жму Update, то все сразу начинает работать корректно именно в этом посте. Я так понимаю какие то экшены отрабатывают при сохранении поста? Возможно что то типо апдейта всей мета информации поста, погуглил, ничего подобного не нашел, нашел только wp_update_post(). Пропустил все посты в цикле через нее, не помогло.
Пробовал так
function my_update_posts() {
//$myposts = get_posts('showposts=-1');//Retrieve the posts you are targeting
$args = array(
'post_type' => 'product',
'numberposts' => -1
);
$myposts = get_posts($args);
foreach ($myposts as $mypost){
$mypost->post_title = $mypost->post_title.'';
wp_update_post( $mypost );
}
}
add_action( 'wp_loaded', 'my_update_posts' );
Так же пробовал bulk edit в списке постов, тоже не помогает, только по одному открывать каждый и жать update
Вот тут люди обсуждали примерно похожую проблему, там только с тайтлами похожая ситуация, там ее так и не решили. Указанные там способы я в принципе и сам пробовал, не помогло...
Ответы (1 шт):
попробуйте использовать WP_Query в цикле, чтобы вытянуть посты - https://wp-kama.ru/function/wp_query
и попробуйте сохранить в цикле через update_post_meta($post->ID, 'acf_name', $what_to_save);