V2ToV3Migration.php
688 Bytes
<?php
namespace ACA\ACF\Utils;
use AC\ListScreen;
class V2ToV3Migration {
public function migrate_list_screen_settings( ListScreen $list_screen ) {
$settings = $list_screen->get_settings();
foreach ( $settings as $column_name => $setting ) {
if ( 'column-acf_field' === $setting['type'] ) {
$field = $setting['field'];
$acf_field = acf_get_field( $setting['field'] );
if ( $acf_field && $acf_field['type'] === 'group' && isset( $setting['sub_field'] ) ) {
$field = 'acfgroup__' . $field . '-' . $setting['sub_field'];
}
$setting['type'] = $field;
$settings[ $column_name ] = $setting;
}
}
$list_screen->set_settings( $settings );
}
}