Импорт и преобразование метаданных wordpress в поле повторителя ACF - PullRequest
0 голосов
/ 15 мая 2019

Я хочу преобразовать данные wp_postmeta старого плагина в Advanced Custom Fields ACF (Pro, но это не главное). Старый плагин сохранял ВСЕ данные в ОДНОМ meta_value (разделенном || и \n), в то время как ACF использовал несколько значений:

Данные старого плагина в MySQL:

meta_id 
post_id    1000
meta_key   "oldplugname"
meta_value "data1||url1\ndata2||url2\ndata3||url3\n"

Как видите, у меня есть от нуля до нескольких данных <-> URL для post_id

Как бы я преобразовал это в поле повторителя ACF Pro (назовем это поле «повторитель»)?

При попытке собрать что-нибудь. аналогично с ретранслятором, который я получу с 3-мя данными:

meta_key              -> meta_value

repeaterfield         -> 3
_repeaterfield        -> field_5cdbf84150b2a
repeaterfield_0_data  -> aaa
_repeaterfield_0_data -> field_5cdbf84f50b2b
repeaterfield_0_url   -> http://urlforaaa.com
_repeaterfield_0_url  -> field_5cdbf84f50b2c
repeaterfield_1_data  -> bbb
_repeaterfield_1_data -> field_5cdbf84f50b2b
repeaterfield_1_url   -> http://urlforbbb.com
_repeaterfield_1_url  -> field_5cdbf84f50b2c
repeaterfield_2_data  -> ccc
_repeaterfield_2_data -> field_5cdbf84f50b2b
repeaterfield_2_url   -> http://urlforccc.com
_repeaterfield_2_url  -> field_5cdbf84f50b2c

Так есть идеи, как преобразовать эти старые данные из "oldplugin" в ACF?

1 Ответ

0 голосов
/ 15 мая 2019

Вы можете использовать метод ACF add_row (): https://www.advancedcustomfields.com/resources/add_row/

Разделить мета-значение старого плагина, сначала на \ n, а затем на ||, пройти по нему и для каждой строки использовать add_row ()способ.

...