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!


Speichern auf digg Speichern auf slashdot Speichern auf del.icio.us Speichern auf technorati Speichern auf furl Speichern auf Google Speichern auf Mister Wong

Kommentar schreiben

  • Benötigte Felder sind mit einem Stern (*) markiert.
  • Es ist nicht möglich im Kommentar URLs und Links zu hinterlassen.