Das Pods-Framework speichert benutzerdefinierte Felddaten entweder in benutzerdefinierten Tabellen oder in wp_postmeta. Der Migrationsansatz hängt vom Speicher-Modus ab und bleibt ein manueller/beta Pfad, bis die Pods-Inhaltstypen, Beziehungen und Vorlagenhilfsaufrufe der Website überprüft werden.
Erkennung
php
// Check if Pods tables exist
global $wpdb;
$pods_tables = $wpdb->get_col( "SHOW TABLES LIKE '{$wpdb->prefix}pods%'" );
$has_pods = ! empty( $pods_tables );Migration von Pods Meta-Speicher
Wenn Pods wp_postmeta (der Standard) verwendet, ist die Migration unkompliziert:
php
function migrate_pods_to_fieldforge( $post_type, $field_map ) {
$posts = get_posts( [ 'post_type' => $post_type, 'numberposts' => -1, 'fields' => 'ids' ] );
foreach ( $posts as $post_id ) {
foreach ( $field_map as $pods_name => $ff_name ) {
$value = get_post_meta( $post_id, $pods_name, true );
if ( '' !== $value && null !== $value ) {
update_field( $ff_name, $value, $post_id );
}
}
}
}
// Usage: migrate with optional name remapping
migrate_pods_to_fieldforge( 'event', [
'event_date' => 'event_date',
'event_location' => 'venue_address',
'ticket_price' => 'price',
] );Vorlagenaktualisierungen
php
// Before (Pods)
$pod = pods( 'event', get_the_ID() );
$date = $pod->field( 'event_date' );
// After (Field Forge)
$date = get_field( 'event_date' );—