Emanuele Feronato nos muestra cómo logró hacer que los widgets dentro de una sidebar se muestren aleatoriamente. Básicamente creó una función que colocó en el functions.php de su theme para colocar los widgets dentro de un array, dividir ese array y modificar el orden al azar:
function random_widgets($sidebar,$random_start,$random_end){
ob_start();
$widgets = dynamic_sidebar($sidebar);
if($widgets){
$html = ob_get_contents();
$widgets_array = explode("<li",$html);
$head = array_slice($widgets_array, 0, $random_start);
$body = array_slice($widgets_array, $random_start, $random_end-$random_start+1);
$tail = array_slice($widgets_array, $random_end+1);
shuffle($body);
$new_array = array_merge($head,$body,$tail);
foreach($new_array as $widget){
if($widget){
$final_html.= "<li".$widget;
}
}
}
else{
$final_html = "";
}
ob_end_clean();
echo $final_html;
}
En la sidebar el código a colocar es:
<div class="sidebar">
<ul>
<?php if(function_exists('dynamic_sidebar')):random_widgets('Sidebar',2,5); else : ?>
<?php endif; ?>
</ul>
</div>

Emprendedora incansable, fundadora de SummArg y de SiteFun.
24-10-12
Hola, llevo algún tiempo intentando activar esa función de orden aleatorio sin conseguirlo.
¿en qué lugar exacto de la sidebar.php insertaríamos el código?
¿alguna web que utilice esta función?
Gracias.