Je souhaite afficher une image aléatoire parmi quelques options de ma boucle si un champ personnalisé n'a pas une certaine valeur ou peut-être s'il ne contient pas de vignette. Dans tous les cas, il devrait cracher une des images aléatoires. Au lieu de cela, il me les donne tous pour chaque poste qui satisfait à la condition. Comment puis-je faire en montrer un seul au hasard? Merci. Voici le code partiel:
<?php
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
?>
<?php $image = get_post_meta($post->ID, 'myimage', true); ?>
<?php if ($image != 'myimage.jpeg'){
$upload_dir = wp_upload_dir();
echo '<img class="myclass" src="'.$upload_dir['url'].'/'.$image.'" alt="">';
} else {
?>
<?php
for ($i = 1; $i < 4; $i++) { ?>
<?php echo 'defaultImage'.$i .'.jpeg';
} ?>
<?php
$settings = get_option( "defaultImage" );
$random = Rand( 1, 4 );
if ( isset( $settings[ "defaultImg$random" ] ) )
echo $settings[ "defaultImg$random" ];
}
?>
RESOLU: Ma solution était vraiment simple:
$input = array("defaultImage1.jpeg", "defaultImage2.jpeg", "defaultImage3.jpeg", "defaultImage4.jpeg", "defaultImage5.jpeg", "defaultImage6.jpeg");
$upload_dir = wp_upload_dir();
$Rand_keys = array_Rand($input, 2);
echo '<img class="story-carousel" src="'.$upload_dir['url'].'/'.$input[$Rand_keys[0]].'" alt="">';
Ma solution était vraiment simple:
$input = array("defaultImage1.jpeg", "defaultImage2.jpeg", "defaultImage3.jpeg", "defaultImage4.jpeg", "defaultImage5.jpeg", "defaultImage6.jpeg");
$Rand_keys = array_Rand($input, 2);
echo '<img class="story-carousel" src="'.$upload_dir['url'].'/'.$input[$Rand_keys[0]].'" alt="">';