0

Hi i need to show random 3 tags for a post. all my posts have been tagged with more than 10 tags, i need to display any 3 tags randomly.

for eg:

A sample post

<a href="/tag1">Tag1</a>
<a href="/tag2">Tag2</a>
<a href="/tag3">Tag3</a>

I am currently using <?PHP the_tags()?> to generate all tags how to restrict it to 3 randomly generated tags.

2 Answers 2

1

Try this:

   $posttags = get_the_tags();
   $count=0;
   if ($posttags) {
       foreach($posttags as $tag) {
          $count++;
          echo '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a> ';
          if( $count >4 ) break;
       }
   }
2
  • spot on ,i need to make it random. bcoz every time it shows first three tag(in ascending ord ). how to make it random?
    – Ezhil
    Aug 17, 2011 at 5:53
  • just add shuffle($posttags); before $count=0;
    – Sean Lee
    Aug 17, 2011 at 7:54
0
$count = 0;
$terms = get_terms( array(
    'taxonomy' => 'post_tag',
    'hide_empty' => true,
) );

foreach($terms as $term) {
    $term_link = get_term_link( $term );
    $count++;
    <a href="echo $term_link" class="size-1"> echo $term->name </a>;
    if ( $count >36 )
        break;
}   

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.