Benutzerdefinierte Taxonomie-Eltern von einer anderen Taxonomie

Ich habe mich danach umgesehen, aber nichts ist aufgetaucht (vielleicht suche ich nicht gut genug?), Aber ich versuche, ein Elternteil auf eine Taxonomie zu setzen, die von einer anderen Taxonomie geladen wird.

Zum Beispiel habe ich Automarken und Automodelle, wenn ich ein neues Modell hinzufüge, möchte ich sein Elternteil (Automarke) nicht ein anderes Elternteil in sich selbst auswählen.

Makes kann keine Eltern haben, aber kann unbegrenzt Kinder haben, Models können keine Kinder haben und dort Eltern müssen eine Marke sein.

Ist das möglich? Vorzugsweise ohne ein Plugin.

/* Makes */ $labels = array( 'name' => _x( 'Makes', 'taxonomy general name' ), 'singular_name' => _x( 'Make', 'taxonomy singular name' ), 'search_items' => __( 'Search Makes' ), 'all_items' => __( 'All Makes' ), 'parent_item' => __( 'Parent Make' ), 'parent_item_colon' => __( 'Parent Make:' ), 'edit_item' => __( 'Edit Make' ), 'update_item' => __( 'Update Make' ), 'add_new_item' => __( 'Add New Make' ), 'new_item_name' => __( 'New Make' ), ); register_taxonomy('makes', 'car', array('hierarchical' => false, 'labels' => $labels, 'query_var' => false, 'rewrite' => false, 'with_front' => false)); /* Models */ $labels = array( 'name' => _x( 'Models', 'taxonomy general name' ), 'singular_name' => _x( 'Model', 'taxonomy singular name' ), 'search_items' => __( 'Search Models' ), 'all_items' => __( 'All Models' ), 'parent_item' => __( 'Parent Model' ), 'parent_item_colon' => __( 'Parent Model:' ), 'edit_item' => __( 'Edit Model' ), 'update_item' => __( 'Update Model' ), 'add_new_item' => __( 'Add New Model' ), 'new_item_name' => __( 'New Model' ) ); register_taxonomy('models', 'car', array('hierarchical' => true, 'labels' => $labels, 'query_var' => false, 'rewrite' => false, 'with_front' => false)); 

Diese Frage ist leicht verwandt: Zeige WordPress Custom Taxonomy Items basierend auf einem ausgewählten Artikel aus einer anderen benutzerdefinierten Taxonomie, aber ich nehme an, die Eltern / Kind-Elemente stammen aus einer Taxonomie? In meinem Fall müssen sie zwei getrennte Taxonomien sein.

Solutions Collecting From Web of "Benutzerdefinierte Taxonomie-Eltern von einer anderen Taxonomie"

Ich bin mir nicht sicher, aber sieh dir register_taxonomy_for_object_type – es verbindet sogar Taxonomien.

Wenn es nicht hilft, ist Ihre einzige Lösung eine Kombination aus benutzerdefinierten Taxonomie und benutzerdefinierten Beitragstyp

Ich weiß, dass du keine Plugins gesagt hast, aber kann ich einen Vorschlag machen, ein hoch konfigurierbares Plugin zu verwenden, das benutzerdefinierte Felder / Gruppen, benutzerdefinierte Post-Typen und benutzerdefinierte Taxonomien behandelt?

Wirklich toll, einfach und einfach zu bedienendes Plugin. Keine Hardcore-Werbung. Versteckt nicht Ihre WordPress-Website. Dieses Plugin wird ebenfalls aktiv entwickelt und aktualisiert.

Download- Typen – Benutzerdefinierte Felder und benutzerdefinierte Post-Typen-Verwaltung

Ich verwende dieses Plugin bei fast jeder WordPress-Installation. Sollte fantastisch sein für das, was Sie versuchen zu tun.

Das mache ich ziemlich häufig. WordPress ist momentan nicht out-of-the-box konzipiert.

Leider weiß ich keine Möglichkeit, es ohne ein Plugin zu tun (ist sowieso gut gemacht, mit Optionen ist eine hässliche Alternative). Ich habe eine Standard-Taxonomie-class in einem Plugin, das das schwere Heben für mich erledigt. Es fügt benutzerdefinierte Steuer-Meta-Tabellen zur database hinzu und stellt eine abstrakte benutzerdefinierte Taxonomie-class bereit.

Die Taxonomieklasse behandelt eine Metadatenregistrierung und automatisiert die Erstellung von Metaboxen. Es hat ein paar eingebaute Meta-Parameter sowie als übergeordnetes Element. Ich benutze nur das hierarchische Attribut für einfache Taxonomien (Eltern ist die gleiche Steuer) und eingebaute.

Aktualisieren:

Nun, zum einen dachte ich an meine Post-Typen mit verschiedenen Post-Objekt-Eltern, aber ähnlichem Ansatz.

Wenn ich einige meiner früheren Arbeiten mit Taxonomien durchführe, was ich getan habe, bevor ich mein Framework-Plugin mit der Taxonomie-class erstellt habe, gebe ich ein Dropdown der übergeordneten Begriffe zurück, wenn ich die Taxonomie mit dem ${taxonomyname}_edit_form_fields Hook ${taxonomyname}_edit_form_fields . Sie müssen auch einen callback für den edited_${taxonomyname} Hook bereitstellen, um Ihre übergeordneten Daten irgendwo zu speichern. Sie können hierarchisch für beide auf false setzen und die übergeordnete ID speichern, wo WordPress sie normalerweise speichern würde.

Ich suchte nach einer Antwort auf die gleiche Frage und fand eine Frage zu SE, die die Antwort enthält: https://stackoverflow.com/a/40868654

In WordPress 3.7, das 2013 veröffentlicht wurde, wurde ein Filter hinzugefügt, der es ermöglicht, die Argumente zu manipulieren, um die Liste der Begriffe für das Eltern-Dropdown zu erhalten. Der Filter wurde Ende 2014 auch auf das Bearbeitungsformular angewendet.

Wenn Sie also den Filter taxonomy_parent_dropdown_args verwenden , können Sie die Taxonomie ändern, die die übergeordneten Elemente bereitstellt. So ähnlich:

 < ?php add_filter( 'taxonomy_parent_dropdown_args', 'alter_parent_taxonomy', 10, 2 ); function alter_parent_taxonomy( $args, $taxonomy ) { if ( 'models' != $taxonomy ) return $args; // no change $args['taxonomy'] = 'makes'; $args['depth'] = 1; return $args; } ?> 

Ich habe das noch nicht ausprobiert, da ich immer noch meine ersten Recherchen für das Projekt mache.