Random element in get_post_meta array

Programming
Tutor: None Selected Time limit: 3 Days


Hi

I have a custom field that contains a list of comma separated colors.

I want to randomly select one of those colors.

If get_post_meta returns an array I thought I could randomly pick from that array.

If I try to echo $rand_color_value it just gives me the whole array

How can I randomly select one color from the list in the custom field.

        $agrs = array(

        'post_type' => 'page',

        'tag' => 'colors'

        );

        $colorLoop = new WP_Query($agrs);

        if($colorLoop->have_posts()):

        while($colorLoop->have_posts()):

        $colorLoop->the_post();

        $theColor = get_post_meta($post->ID, 'colors', false);

        /*random color*/

        $rand_color = array_rand($theColor,1);

        $rand_color_value = $theWeight[$rand_color];

        echo $rand_color_value; 

        ?>

        <?php endwhile; endif;?>

        <?php wp_reset_postdata; ?>


Nov 30th, -0001
OK this is easy. First we parse the string to array. Then we random gerenate a number. Then we use index to choose the position in the array.

$array = explode(",", $yourDatabaseString);
$size = count($array);
$rand = rand(0, $size-1);
$result = $array[$rand];
Jun 12th, 2013

Studypool's Notebank makes it easy to buy and sell old notes, study guides, reviews, etc.
Click to visit
The Notebank
...
Nov 30th, -0001
...
Nov 30th, -0001
Dec 7th, 2016
check_circle
Mark as Final Answer
check_circle
Unmark as Final Answer
check_circle
Final Answer

Secure Information

Content will be erased after question is completed.

check_circle
Final Answer