Get Tag Slugs, die mit einem Wort beginnen

Gibt es eine Möglichkeit, alle Tags zu erhalten, deren Startpunkt mit einem bestimmten Wort beginnt? Ich habe versucht, den folgenden Code zu verwenden, gibt aber nichts aus. Was fehlt mir hier? Ich bin neu bei PHP, also entschuldige, wenn ich etwas total falsch mache.

$auth = get_term_by('slug', 'author-', 'tag'); print "values".$auth; 

Solutions Collecting From Web of "Get Tag Slugs, die mit einem Wort beginnen"

Ich denke, es ist einfacher, sie alle zu bekommen und diejenigen zu filtern, die mit dem Autor beginnen:

 < ?php $tags = get_terms( 'tags', array( 'hide_empty' => 0 )); if ( !empty( $tags ) && !is_wp_error( $tags ) ): ?> 
    < ?php foreach ( $tags as $tag ): ?> < ?php if(strpos($tag->slug,'author-') !== false): ?>
  • < ?php echo $tag->name; ?>
  • < ?php endif; ?> < ?php endforeach; ?>
< ?php endif; ?>

Wenn Sie viele Tags haben, können Sie die transiente API verwenden, um die Ergebnisse zu speichern. Ich habe das nicht versucht, aber es sollte gut funktionieren. Dies speichert die Tags für 1 Tag:

http://pastebin.com/dNVkuHAb

  • Vielleicht möchten Sie auch nur die notwendigen Informationen in der temporären API speichern, nicht die ganze Reihe von Dingen, so dass nur der Name und die ID in Ordnung sind, aber Sie bekommen die Idee.

Sie können alle Begriffe abrufen und dann nacheinander durchgehen, um nach dem gewünschten Wert zu suchen:

 $my_term = 'author-'; $terms = get_terms( 'post_tag', 'hide_empty=1' ); if ( !empty( $terms ) && !is_wp_error( $terms ) ){ echo "
    "; foreach ( $terms as $term ) { if (strpos($term->name, $my_term) !== false) { echo '
  • ' . '' . $term->name . '
  • '; } } echo "
"; }

Dieser Code erstellt eine ungeordnete Liste mit einer Verknüpfung zu jedem Tag.