2017-10-18 1 views
0

Ich versuche, alle verwendeten Kategorien pro benutzerdefinierten Beitragstyp anzuzeigen, zum Beispiel auf der Projektseite, ich zeige alle Projekte, und an der Spitze möchte ich alle verwendeten Kategorien für Projekte Schleife . Wenn ich wp_list_categories() verwende, werden ALLE Kategorien angezeigt, auch die Onces, die nicht mit den cpt-Projekten in Verbindung stehen.Wordpress Anzeige alle verwendeten Kategorien pro benutzerdefinierten Beitragstyp

Antwort

0

versuchen, etwas wie folgt aus:

$categories = get_categories(array(
    'orderby' => 'name', 
    'parent' => 0, 
    'exclude' => 1 
)); 

Schleife durch

<?php foreach ($categories as $cat) { ?> 

<?php echo $cat->term_id; ?> 
<?php echo $cat->name; ?> 

    <?php } ?> 

Und dann

query_posts('post_type=post&post_status=publish&posts_per_page=3&cat=-1&paged='. get_query_var('paged')); 
+0

Dies zeigt ALLE Kategorien, auch die Onces, die nicht von den CPT 'Projekten' verwendet werden – user759235

0

Sie sollten alle Kategorien, wenn Sie eine Schleife durch Ihre Beiträge, die in einem Array speichern oder andere Datenstruktur, die Sie nützlich finden.

Die Verwendung eines assoziativen Arrays wäre eine einfache Lösung. Mit Kategorie als Schlüssel und Kategorie Archiv-URL als Wert würden Sie alle Komponenten haben, die benötigt werden, um eine Verknüpfung zu jeder Kategorie zu erstellen.

['category 1' => 'http://yoururl.com/category1',...]

Beispiel

foreach ($posts as $post) { 
    $category = get_the_category($post->ID); 
    ... 
    // using $category, get the title and URL for it 
} 

Von hier aus können Sie alle Eigenschaften, die Sie für jede Kategorie benötigen.

+0

Ich brauche das außerhalb der Schleife – user759235

+0

Sie müssen die '$ Beiträge' zweimal hintereinander durchlaufen. In der ersten, erhalten Sie die Kategorien, im nächsten, rendern die Beiträge. –

Verwandte Themen