Cross mit Bild?

Begonnen von jg, Februar 18, 2005, 08:03:10

« vorheriges - nächstes »

0 Mitglieder und 2 Gäste betrachten dieses Thema.

jg

Hallo Support,
ich möchte mit der Crossartikel-Auflistung auf der
Detailseite noch eine kleine Bildvorschau für jeden dieser
Artikel einrichten. Ich vermute, das lässt sich relativ
leicht über die Funktion get_var_db erledigen. Wie aber
definiere ich dann in der Funktion noch eine ganz bestimmte
Größe für diese Bilder? Geht das...?
jg
--
www.schmuckzone.de

jg

Hallo,

vor eineinhalb Jahren hatte ich hier mal diese Fragen gestellt.
Das wäre immer noch interessant für uns...

Jetzt kommt noch eine Frage hinzu:
Kann man für die Bilder auf der Produktseite eine ganz bestimmte
feste Höhe in Pixel für _alle_ angezeigten Bilder festlegen?

Grüße, jg
--
www.schmuckzone.de

admin

Hallo,

die Bilder werden zunächst mal in der Grösse dargestellt wie sie sind.
Wenn man eine andere Größe braucht, kann man per CSS das IMG-tag manipulieren oder
die Bilder (den Pfad) per SSP auslesen und dann das IMG mit einer festen WIDTH und/oder HIGHT
ausgeben. Es spielt keine Rolle ob das innerhalb der normalen Artikelseiten oder innerhalb von
embedded Tempaltes (Crossartikel) passiert. SSP funktioniert in beiden Fällen gleich.

Mit SSP etwa so:

<!--spmacro:module(img)
sub show {
my $index = $_[0];
my $anzahl = $_[1];
if ($index <= $anzahl) {
my $image = ssp::get_var_article("iimage",$index);
main::mprint("<img width=100 src="$image">");
}
}
-->

__img::show__

Bei CSS muss man ein <span> mit eigener ID um das __image__ setzen, sonst hat man überall
die gleiche Größe.

Also etwa so:

<style>
#myimage.img {
width =100px;
}
</style>

<span id=myimage>__image__<span>


Gruss hop

jg

Hallo hop,

Danke, das funktioniert mit SSP erstmal so.
Wie schreibe ich noch den Link für die Detailseite mit rein?
Das hier funktioniert leider nicht:
main::mprint("<a href='__detail__'><img width=100 src='$image'></a>");
und so:
main::mprint("<a href = \"$ssp::xxpath?show$DETAILSEITEN_NR,$ssp::xxsession,$ssp::itemid\"><img width=150 src='$image'></a>
Hier weiß ich leider nicht welchen Wert ich für 'DETAILSEITEN_NR' eingeben muss...
Ansonsten müsste es doch so klappen, oder?

Grüße, jg
--
www.schmuckzone.de

admin

müsste mit __xdetail__ satt __detail__ funktionieren.

jg

#5
Leider noch ein Problem:
Liegt die Produktvorlage ausserhalb Root zB. im Unterverzeichnis /kunden/gallay/,
wird der Bildpfad falsch aufgebaut und die Unterordner werden noch mit eingefügt.

Richtig: http://schmuckzone.net/shop/+ Bildpfad aus Datenbank
!! Falsch: http://schmuckzone.net/shop/kunden/gallay/+ Bildpfad aus Datenbank

Gibts da noch eine Lösung?

Das andere versuche ich gleich. Danke.

jg


--
www.schmuckzone.de

jg

Ist es vielleicht auch so oder ähnlich möglich, den Pfad _immer gleich_ aufzubauen?

main::mprint("<img width=100 src="$ssp::xxpath,$ssp::get_var_db('img')">");

jg
--
www.schmuckzone.de

admin

Hallo,

Zitat
... $ssp::xxpath,$ssp::get_var_db('img')">"); FEHLER

??? Das funktioniert so nicht.

get_var_db ist nur für direkte DB Zugriffe, also das auslesen von Variablen die vorher mit einem SQL Statment eingelesen wurden,
was heir aber nicht der Fall ist.

Man kann keine Funktion als Variaible schreiben, wie hier mit  "$spp:"
$ssp::get_var_db('img')">");

In einem String kann man kein Funktion aufrufen.

Ich habe dioch oben die Lösung hingeschrieben.

ZitatLiegt die Produktvorlage ausserhalb Root zB. im Unterverzeichnis /kunden/gallay/,
wird der Bildpfad falsch aufgebaut und die Unterordner werden noch mit eingefügt.

Richtig: http://schmuckzone.net/shop/+ Bildpfad aus Datenbank
!! Falsch: http://schmuckzone.net/shop/kunden/gallay/+ Bildpfad aus Datenbank

Alle Vorlagen und Bilder müssen im Katalogverzeichnis "hier offenbar /shop" liegen,
wenn es mit Standardmitteln funktionieren soll.

Zitatmain::mprint("<a href = \"$ssp::xxpath?show$DETAILSEITEN_NR,$ssp::xxsession,$ssp::itemid\"><img width=150 src='$image'></a>
Hier weiß ich leider nicht welchen Wert ich für 'DETAILSEITEN_NR' eingeben muss...

Detailseiten haben keine Nummer, sondern werden durch die Artikelnummer aufgerufen. Die Nummer, die hier $DETAILSEITEN_NR bezeichnet
ist, ist die Rückkehrseite, wenn man von der Detailseite etwas in den Warenkorb legt.

Die Artikelnummer sollte  man nicht mit $ssp::itemid auslesen, sondern über

my $itemid = ssp::get_var_article('itemid',$index);

Gruss hop


Gruss hop


jg

#8
So sollte es als 'universelle' Lösung funktionieren:

<!--spmacro:module(img)
# Größe Artikelbilder verändern
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('xdimage',$index);
      main::mprint('<a href="__xdetail__"><img width=130 src=' . $path . '/' . $pic . '></a>');
   }
}
-->

Danke an dieser Stelle nochmal an hop für die Funktion $ssp::catalog_abs;  ;)

jg
--
www.schmuckzone.de

admin

#9
Hallo jg,

ich galube wir reden hier aneinander vorbei:

richtig: ssp::get_var_article()

falsch: ssp::get_var_db()

Ich will das Thema hier beenden.
Bitte direkt an den Support wenden.

Gruss hop

Jetzt gerade erst letzten Post gesehen, ja so ist richtig,  :)