immonex WordPress-Plugins für Immobilien-Websites › Foren › immonex OpenImmo2WP › Zusätzliche Taxonomy „Projekte“ beim XML-Import automatisch befüllen
- Dieses Thema hat 3 Antworten und 2 Stimmen, und wurde zuletzt aktualisiert vor 11 Monaten von
Carsten Scheuer.
-
AutorBeiträge
-
27. Juni 2022 um 10:39 #19049
Alexander Berg
TeilnehmerHallo Zusammen,
habt ihr einen Tipp für uns, wie wir an folgende Werte kommen können?
Theme: Child Theme von Realhomes
Mapping Tabelle: individuellwir möchten eine zusätzliche, in WordPress angelegte Taxonomy „Projekte“ beim XML-Import automatisch mit den Projektnamen befüllen. Dieser wird in der XML-zip Datei leider nicht mitgeliefert. Da der Projektname in der REAL_HOMES_property_id steckt
versuchen wir den Wert der REAL_HOMES_property_id auszulesen und dann über die geänderte Mapping Datei als Projektname automatisch einzutragen.Wert hier entnehmen:
Type: custom_field
Source: Verwaltung_techn->objektnr_extern
Destination: REAL_HOMES_property_idüberarbeiten, um daraus den Projektnamen zu generieren (die ersten Zeichen entsprechen dem Projekt)
und dann hier eintragen:Type: taxonomy
Source: verwaltung_techn->projektnr_ks
Destination: projektErste Versuche, das über „immonex_oi2wp_insert_taxonomy_term“ hinzubekommen, waren erfolglos…
Vielen lieben Dank für einen Tipp 🙂
27. Juni 2022 um 14:42 #19051Carsten Scheuer
VerwalterServus!
Hier ein Beispiel für eine einfache Action-Hook-Funktion, mit der nach jedem Objektimport ein zugehöriger Term (erste drei Zeichen der Objektnummer) in der Custom-Taxonomie projekt gespeichert wird.
1234567891011121314151617181920212223242526272829/*** [immonex OpenImmo2WP] Nach dem Import eines Objekts einen zugehörigen Term in* der Projekt-Taxonomie ergänzen (Real-Homes-Theme).*/add_action( 'immonex_oi2wp_property_imported', 'mysite_add_project_tax_term', 10, 2 );function mysite_add_project_tax_term( $post_id, $immobilie ) {$taxonomy = 'projekt'; // <-- Name der Ziel-Taxonomie$property_id = get_post_meta( $post_id, 'REAL_HOMES_property_id', true );if ( ! $property_id ) {return;}$term_name = substr( $property_id, 0, 3 ); // <-- Beispiel: erste drei Zeichen der Objekt-ID übernehmen$term = get_term_by( 'name', $term_name, $taxonomy );if ( empty( $term ) ) {$new_term = wp_insert_term( $term->name, $taxonomy );if ( ! is_wp_error( $new_term ) ) {wp_set_object_terms( $post_id, $new_term['term_id'], $taxonomy, false );}} else {wp_set_object_terms( $post_id, $term->term_id, $taxonomy, false );}} // mysite_add_project_tax_term(Sollte dieser Ansatz nicht funktionieren, bitte kurz Bescheid geben!)
27. Juni 2022 um 18:47 #19053Alexander Berg
TeilnehmerHallo Carsten,
klasse, hat wunderbar funktioniert – genau das haben wir gesucht.
Vielen lieben Dank für Deinen top Support
28. Juni 2022 um 5:13 #19054Carsten Scheuer
VerwalterGerne! 😉
-
AutorBeiträge
- Du musst angemeldet sein, um zu diesem Thema eine Antwort verfassen zu können.