In functions.php
kann ich var_dump()
Taxonomien wie:
$taxonomies=get_taxonomies('','names');
echo '<pre>';
var_dump($taxonomies);
was gib mir:
array(7) {
["category"]=>
string(8) "category"
["post_tag"]=>
string(8) "post_tag"
["nav_menu"]=>
string(8) "nav_menu"
["link_category"]=>
string(13) "link_category"
["post_format"]=>
string(11) "post_format"
["project"]=>
string(7) "project"
["team"]=>
string(4) "team"
}
Jetzt möchte ich alle "Kategorien" aus meinem registrierten Taxonomie "Projekt" erhalten
Ich habe versucht, mit get_categories () und get_terms () beide ein leeres Array zurückzugeben.
$taxonomies = array(
'project'
);
$args = array(
'orderby' => 'name',
'order' => 'ASC',
'hide_empty' => true,
'exclude' => array(),
'exclude_tree' => array(),
'include' => array(),
'number' => '',
'fields' => 'all',
'slug' => '',
'parent' => '',
'hierarchical' => true,
'child_of' => 0,
'get' => '',
'name__like' => '',
'description__like' => '',
'pad_counts' => false,
'offset' => '',
'search' => '',
'cache_domain' => 'core'
);
$terms = get_terms($taxonomies, $args);
var_dump($terms);
geben
array(0) {
}
Was mache ich falsch?
Es gibt nur ein paar Dinge, auf die ich hier mit get_terms
hinweisen möchte.
Sie müssen keinen Wert in ein Array einfügen, sondern können den Wert einfach so wie er ist zur Variablen hinzufügen
Um Ihre Bedingungen zurückzugeben, müssen Ihnen tatsächlich Posts zugewiesen sein. Standardmäßig werden leere Begriffe ausgeblendet. Gleiches gilt für get_categories
. Wenn Sie auch leere Begriffe anzeigen müssen, setzen Sie den Parameter hide_empty
auf false
.
Sie müssen die Standardwerte nicht aufrufen. Wenn Sie den Wert eines Parameters nicht ändern möchten, fügen Sie ihn nicht zu Ihren Argumenten hinzu. Fügen Sie einfach die Parameter hinzu, die Sie ändern möchten
Hier ist ein richtiges Beispiel
$args = array(
'hide_empty' => false,
);
$terms = get_terms('project', $args);
var_dump($terms);
Hier erhalten wir alle Begriffe, auch leere, sortiert nach den Standardnamen aus der Taxonomie project