Shopsystem ShopPilot

ShopPilot => SSP - Shop Server Pages => Thema gestartet von: dobra am Oktober 22, 2009, 07:15:05

Titel: einheitliche Bilder auf Verzeichnisseite
Beitrag von: dobra am Oktober 22, 2009, 07:15:05
Hallo,

Wenn Artikel (z.B. auf Produkt- oder Verzeichnisseiten) mit loopitem dargestellt werden aber es für einige Artikel kein Bild gibt, stört das u.U. die einheitliche Optik.
Mit diesem kleinen Script wird in diesem Fall automatisch ein "nopic" Image angezeigt, wenn für einen Artikel kein eigenes Image hinterlegt ist.
Zusätzlich kann man die Bilder auch auf einheitliche Breite skaliert, Rahmen anzeigen usw.

<!--spmacro:module(img)
sub show {
   my $index = $_[0];
   my $anzahl = $_[1];
   my $path = $ssp::catalog_abs;
   my $itemid = ssp::get_var_article('itemid',$index);
   if ($index <= $anzahl) {
      my $pic = ssp::get_var_article('iimage',$index);
 my $seite = ssp::get_var_article('ipagenr', $index);
if (length($pic) < 3) { $pic = "images/other/nopic.gif"; }
      main::mprint('<a href="__img::link__"><img style="width: 95px; border: 1px solid black;" src="' . $path . '/' . $pic . '"></a>');
   }
}

sub link {
my $index = shift;
my $anzahl = shift;
if ($index <= $anzahl) {
my $seite = ssp::get_var_article('ipagenr', $index);
my $itemid = ssp::get_var_article('itemid', $index);
main::mprint(qq|__xxpath__?showd$seite!0,$ssp::xxsession,$itemid|);
}
return "noinc";
}
-->

$pic = "images/other/nopic.gif"  hier den Pfad zum "kein Bild vorhangen" Image eintragen
<img style=" ... "  hier können die Bilder formatiert werden - es sind alle css-Anweisungen wie width, heigth, border, padding usw. möglich

 __image__  dann mit __img::show__ ersetzen
Titel: Re: einheitliche Bilder auf Verzeichnisseite
Beitrag von: Joachim am Dezember 08, 2009, 15:50:15
Moin dobra,
gilt das auch für __simage__ oder __dimage__ ?
Titel: Re: einheitliche Bilder auf Verzeichnisseite
Beitrag von: dobra am Dezember 08, 2009, 16:12:50
Hallo Joachim,

für  __simage__   ja

das Detailbild  (__dimage__)  kriegst Du mit
my $pic = ssp::get_var_article('xdimage',$index);
(nur auf Detailseiten verwendbar)