Jag gjorde några anpassade taxonomier och jag måste visa ALLA termerna från den, det jag hittills uppnått är att visa de taxonomier som är valda / valda i en anpassad inläggstyp men jag behöver alla att visa, oavsett om den är vald eller inte. Så att jag senare kan skapa ett filter som filtrerar efter vilka termer ett anpassat inläggstypvärde innehåller.
<?php $args=array( "public" => true, "_builtin" => false ); $output = "names"; // or objects $operator = "and"; $taxonomies=get_taxonomies($args,$output,$operator); if ($taxonomies) { foreach ($taxonomies as $taxonomy ) { $terms = get_terms($taxonomy); foreach ( $terms as $term) { ?> <li><br><a href="#"><input type="checkbox" name="profile[]" value=""><?php echo $term->name; ?> <br/></a></li> <?php } } } ?>
Vad jag har hittills.
Tack på förhand!
Kommentarer
- Vid vilken tidpunkt misslyckas detta? Hur mycket av det fungerar som du ' gillar?
- Det fungerar problemet är att jag bara kan visa de Valda termer i en anpassad inläggstyp. Jag vill att alla ska visa om de är valda eller inte, jag vill inte ' inte ha en dummy-inläggstyp som har allt valt bara för att visa dem.
Svar
Du måste skicka ett ytterligare argument till . Standard är att dölja ”tomma” termer – termer som tilldelas inga inlägg.
$terms = get_terms([ "taxonomy" => $taxonomy, "hide_empty" => false, ]);
Kommentarer
- Tack så mycket! Men jag vill fråga något, varför skulle du skapa en matris inuti en variabel istället för att förklara den ovan där den första matrisen visas?
- Enkelhet. Om argumentmatrisen var mer komplex skulle jag ha förklarat det först (troligtvis), men för ett enda argument är det bara det enklaste sättet att göra det. Det borde fungera lika bra hur som helst.
- Tack så mycket 🙂 som tyckte mig mycket. Jag uppskattar det verkligen!
- Fungerar !! Nu kan jag se vad ' händer med alla taxonomialternativ! Vissa plugins skapar komplex struktur där.
Svar
Sedan 4.5.0 bör taxonomier skickas via ”taxonomi” -argument i $ args-arrayen så:
$terms = get_terms( array( "taxonomy" => "post_tag", "hide_empty" => false, ) );
där termer som inte har några inlägg döljs som standard.
Svar
Denna kod hämtar alla kategorier och underkategorier anpassade taxonomier med get_terms()
:
<?php $wcatTerms = get_terms("product_cat", array("hide_empty" => 0, "parent" =>0)); foreach($wcatTerms as $wcatTerm) : ?> <ul> <li> <a href="<?php echo get_term_link( $wcatTerm->slug, $wcatTerm->taxonomy ); ?>"><?php echo $wcatTerm->name; ?></a> <ul class="megaSubCat"> <?php $wsubargs = array( "hierarchical" => 1, "show_option_none" => "", "hide_empty" => 0, "parent" => $wcatTerm->term_id, "taxonomy" => "product_cat" ); $wsubcats = get_categories($wsubargs); foreach ($wsubcats as $wsc): ?> <li><a href="<?php echo get_term_link( $wsc->slug, $wsc->taxonomy );?>"><?php echo $wsc->name;?></a></li> <?php endforeach; ?> </ul> </li> </ul> <?php endforeach; ?>