Anzeigen einer Tag Cloud - CSS-Tricks

Anonim
 8, // font size for the least used tag 'largest' => 22, // font size for the most used tag 'unit' => 'px', // font sizing choice (pt, em, px, etc) 'number' => 45, // maximum number of tags to show 'format' => 'flat', // flat, list, or array. flat = spaces between; list = in li tags; array = does not echo results, returns array 'orderby' => 'name', // name = alphabetical by name; count = by popularity 'order' => 'ASC', // starting from A, or starting from highest count 'exclude' => 12, // ID's of tags to exclude, displays all except these 'include' => 13, // ID's of tags to include, displays none except these 'link' => 'view', // view = links to tag view; edit = link to edit tag 'taxonomy' => 'post_tag', // post_tag, link_category, category - create tag clouds of any of these things 'echo' => true // set to false to return an array, not echo it ) ); ?>

Die Standardgröße für diese Funktion ist "pt", sofern keine angegeben ist. Dies ist etwas ungewöhnlich und häufig unzuverlässig. Stellen Sie daher sicher, dass Sie diesen Parameter so ändern, dass Sie die Schriftgröße auf Ihrer Site normal anpassen.

Weniger seltsame Schriftgröße

Tag-Clouds erreichen ihre unterschiedlichen Schriftgrößen, indem sie jedem Tag ein Inline-Styling zuweisen. Die resultierenden Schriftgrößen können sehr seltsam sein, wie style = 'font-size: 29.3947354754px;'. Mike Summers schlägt diese Lösung vor:


    8, // font size for the least used tag 'largest' => 40, // font size for the most used tag 'unit' => 'px', // font sizing choice (pt, em, px, etc) 'number' => 200, // maximum number of tags to show 'format' => 'array', // flat, list, or array. flat = spaces between; list = in li tags; array = does not echo results, returns array 'separator' => '', // 'orderby' => 'name', // name = alphabetical by name; count = by popularity 'order' => 'RAND', // starting from A, or starting from highest count 'exclude' => '', // ID's of tags to exclude, displays all except these 'include' => '', // ID's of tags to include, displays none except these 'link' => 'view', // view = links to tag view; edit = link to edit tag 'taxonomy' => 'post_tag', // post_tag, link_category, category - create tag clouds of any of these things 'echo' => true // set to false to return an array, not echo it )); foreach ($arr as $value) ( $ptr1 = strpos($value,'font-size:'); $ptr2 = strpos($value,'px'); $px = round(substr($value,$ptr1+10,$ptr2-$ptr1-10)); $value = substr($value, 0, $ptr1+10) . $px . substr($value, $ptr2); $ptr1 = strpos($value, "class="); $value = substr($value, 0, $ptr1+7) . 'color-' . $px . ' ' . substr($value, $ptr1+7); echo '
  • ' . $value . '
  • '; ) ?>

Das Ergebnis ergibt Folgendes:

Tag Name

das sehr gut finden:

Tag Name

Beachten Sie den zusätzlichen Bonus, dass die Links jetzt den Klassennamen "Farbe-29" haben, da dies vorher nicht der Fall war. Jetzt haben Sie einen Haken, um Tag-Namen basierend auf ihrer Größe einzufärben.