[РЕШЕНО] Тип хранения в DB из serialize to json ?? «Efavourite Posts»
Плагин избранных постов изменил тип хранения id
ранее было так
a:331:{i:0;s:5:"63798";i:1;s:5:"56478";i:2;s:5:"48211";
сейчас
["63798","56478","48211"]
как правильнее ?
пока думаю стоит ли обновить поля на новый тип хранения и переписать БД
либо
Поправить плагин и заставить писать в serialize() как раньше
мозгов поправить js у меня не хватит , подскажите как пересоздать данные в БД для всех пользователей .
пока что думаю получить все ID и сделать foreach
set_time_limit(300); $users = get_users( ); foreach($users as $user_id){ echo '['.$user_id->ID .']'. '<br>'; $user_meta = get_user_meta( $user_id->ID,'efav_posts' ); $json_encode = json_encode($user_meta); $json_encode = mb_substr($json_encode, 1, -1); // лишние скобки update_user_meta( $user_id->ID ,'efav_posts' , $json_encode ); }
До кучи: плагин ещё требует замены имен
UPDATE `wp_usermeta` SET `meta_key` = 'efav_posts' WHERE `meta_key` = 'wpfp_favorites' UPDATE `wp_postmeta` SET `meta_key` = 'efav_posts' WHERE `meta_key` = 'wpfp_favorites'