Zufälliges Header-Bild ausgeben mit MODx
von Thomas Jakobi am Mittwoch, 28. Mai 2008 um 09:30 Uhr. Kommentare (0)
Manchmal möchte man auf einer Webseite z.B. im Header ein zufälliges Bild anzeigen lassen. Dafür habe ich ein kleines Snippet geschrieben.
Das Snippet gibt den Namen einer Bilddatei im Standard-Verzeichnis assets/images/header zurück. Als Parameter sind &folder und &defaultImage nutzbar.
RandomImage.snippet.php
<?php /**************************************************** * Name: RandomImage * Version 0.3.1 * Desc: returns the name of a random image file * Author: Thomas Jakobi - Kontakt * Date: 28. May. 2008 * * Usage: [!RandomImage!] * * Parameters: * folder: folder to search for the random image (defaults to 'assets/images/header') * defaultImage: default image if no image is found (defaults to 'blank.gif') * ***************************************************/ $folder = (isset ( $folder )) ? $folder : 'assets/images/header'; $defaultImage = (isset ( $defaultImage )) ? $defaultImage : 'blank.gif'; $i = 0; $imgDir = opendir ( $folder ); while ( $file = readdir ( $imgDir ) ) { //checks that file is an image $file_type = strrchr ( $file, "." ); $is_image = eregi ( "jpg|gif", $file_type ); $is_thumb = ! strncmp ( $file, '.thumb_', 7 ); if ($file != '.' && $file != '..' && $is_image && !$is_thumb) $images [$i ++] = $file; } closedir ( $imgDir ); if ($i == 0) return ($defaultImage); srand ( ( double ) microtime () * 1000000 ); $image_name = $folder . '/' . $images [rand ( 0, sizeof ( $images ) - 1 )]; return ($image_name); ?>
Viel Erfolg!







Kommentar schreiben