web-dev-qa-db-ger.com

Wie bekomme ich alle Taxonomien eines Beitragstyps?

Wie kann ich Taxonomien eines Post-Typs erhalten?

Wenn ich einen Beitragstyp event habe und die Liste der Taxonomien herausfinden muss, die diesem Beitragstyp beigefügt sind. Wie finde ich sie?

43
Sisir

Hey Leute, ich glaube ich habe es verstanden! Nachdem ich mir einige Funktionen in der taxonomy.php-Datei in WordPress angesehen habe, habe ich diese Funktion get_object_taxonomies(); gefunden, die den Trick gemacht hat :)

Hier ist die Funktion

function get_post_taxonomies($post) {
    // Passing an object
    // Why another var?? $output = 'objects'; // name / objects
    $taxonomies = get_object_taxonomies($post, 'objects');

    /*// Passing a string using get_post_type: return (string) post, page, custom...
    $post_type  = get_post_type($post);
    $taxonomies = get_object_taxonomies($post_type, 'objects');*/

    /*// In the loop with the ID
    $theID      = get_the_ID();
    $post_type  = get_post_type($theID);
    $taxonomies = get_object_taxonomies($post_type, 'objects');*/

    // You can also use the global $post

    // edited to fix previous error $taxonomies
    // edited to force type hinting array
    return (array) $taxonomies; // returning array of taxonomies
}
34
Sisir

get_categories erledigt den Job.

get_categories('taxonomy=taxonomy_name&type=custom_post_type'); 
9
addedlovely

Hast du irgendetwas versucht? etwas wie das?

<?php 

$args=array(
  'object_type' => array('event') 
); 

$output = 'names'; // or objects
$operator = 'and'; // 'and' or 'or'
$taxonomies=get_taxonomies($args,$output,$operator); 
if  ($taxonomies) {
  foreach ($taxonomies  as $taxonomy ) {
    echo '<p>'. $taxonomy. '</p>';
  }
}
?>
1
Reigel