Optionales benutzerdefiniertes Feld speichern

Hat man ein optionales Feld in seiner Immobiliensoftware, dass, wenn es leer ist, nicht exportiert wird, dann kann über das Mapping auch keine Zuordnung erfolgen.

In diesem Fall kann das Feld manuell über einen Filter angelegt werden, oder bei der Ausgabe entsprechend angepasst werden.

Beispiel

In der Immobiliensoftware legt man ein benutzerdefinierte Feld an Frei_bis, welches ein Datum enthält, bis wann ein Objekt zur Verfügung steht.

Ohne ein Datum soll der Text unbefristet gespeichert werden.

/**
 * Angabe "Frei bis" als individuelles Custom Field (frei_bis) ergänzen
 */
function mysite_add_available_until( $post_id, $immobilie ) {
  $value = $immobilie->xpath('//verwaltung_objekt/user_defined_simplefield[@feldname="Frei_bis"]')[0];
 
  if ( $value ) {
    add_post_meta( $post_id, 'frei_bis', $value );
  } else {
    add_post_meta( $post_id, 'frei_bis', 'unbefristet' );
  }
} 
add_action( 'immonex_oi2wp_property_imported', 'mysite_add_available_until', 20, 2 );