Shopsystem ShopPilot

ShopPilot => SSP - Shop Server Pages => Thema gestartet von: 1nelly1 am Januar 31, 2011, 18:43:27

Titel: Zufallsbild anzeigen
Beitrag von: 1nelly1 am Januar 31, 2011, 18:43:27
Hallo,

ich möchte ein Zufallsbild (kein Artikelbild, kein Kategorienbild) anzeigen lassen, welches beim Aufruf der Seite aus einem festgelegten Verzeichnis, in welchem sich die Bilder (jpg) befinden, geladen wird.
Hier ist mein funktionierender Vorschlag, bei dem ihr möglicherweise Korrekturen oder Hinweise für mich habt:

<!--spmacro:module(zufallsbild)
use Cwd;
sub anzeigen{
   my $verzeichnispfad = '../meinshop/images/zufallsbilder';
   my $arbeitsverzeichnis = cwd;
   if ($arbeitsverzeichnis eq 'C:/MeinWebshop') {$verzeichnispfad = 'images/zufallsbilder'}
   my @dateien_in_verzeichnis = <$verzeichnispfad/*.jpg $verzeichnispfad/*.jpeg>;
   my $anzahl_dateien = @dateien_in_verzeichnis;
   my $zufallszahl = int(rand($anzahl_dateien));
   my $ausgabe = qq|<img src="../$dateien_in_verzeichnis[$zufallszahl]">|;
   main::mprint($ausgabe);
}
-->

Aufruf über __zufallsbild::anzeigen__ . Die Zeilen 2 und 3 im Hauptblock habe ich nur eingefügt, damit das Bild auch unter LiveView lokal gefunden wird.

Viele Grüße
1nelly1
Titel: Re: Zufallsbild anzeigen
Beitrag von: admin am Februar 01, 2011, 09:40:52
Hallo,

ein ganz nützliches Modul  :)
Vielleicht noch der Hinweise, um das Bild anzuzeigen schreibt man
<img src="__zufallsbild::anzeige__" border="0" \>

Gruß hop
Titel: Re: Zufallsbild anzeigen
Beitrag von: 1nelly1 am Februar 01, 2011, 13:37:36
Hallo hop,

ja stimmt, es wäre besser, wenn nur der Bildpfad vom Modul ausgegeben wird.
Dann muss man das Script wie folgt ändern:

VORHER: 
my $ausgabe = qq|<img src="../$dateien_in_verzeichnis[$zufallszahl]">|;
NACHHER:
my $ausgabe = qq|../$dateien_in_verzeichnis[$zufallszahl]|;

Dann Aufruf wie von hop beschrieben.

Viele Grüße
1nelly1