identifier über variable doppelt nutzen

Begonnen von connie, Mai 20, 2008, 00:20:20

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

connie

Hallo,

ich bin völlig pl-ahnungslos und würde gerne einen identifier (ergaenz2) für eine verlinkung doppelt nutzen (im link und im text).

das könnte ja klappen, wenn ich den identifier als variable definiere und daraus dann den link plus text bastle.
also als ergebnis würde ich dann <a href=http://__xxpath__?showbyname$kat,__xxsession__>$kat</a> bekommen.
so kann ich wahrscheinlich ja umgehen, dass der identifier gleich weitergezählt wird und der link vom einen, der text vom nächsten artikel erscheint - oder liegt hier ein denkfehler vor?

das ganze soll dann noch in einem loopitem funktionieren, wenn möglich.

leider wird immer nur der erste link mit meinem kat::link-"Modul" angezeigt (bei allen artikeln, egal ob loopitem oder mehrmals codiert), es scheint also großer mist zu sein.

ach ja, hintergedanke ist, die artikel, die auf die eingangsseite verknüpft wurden, auf ihre kategorie "rückzurechnen". ich möchte also auf der eingangsseite beim artikel auch die kategorie vermerkt und zur artikelseite der kategorie verlinkt haben. gibt es dafür vielleicht sowieso eine einfachere möglichkeit (ohne identifier, wo ich die kategorie (nochmal) reinschreiben muss)?

wer ist so nett und hilft mir (falls ich mich einigermaßen verständlich ausgedrückt habe)?

danke,
connie

dobra

#1
Hallo connie,

also mal ehrlich - ich mußte den Beitrag 4x lesen bis ich (hoffentlich) verstanden habe, was Sie machen möchten  ;)

Wenn ich das also richtig interpretiert habe, möchten Sie bei den als Verknüpfung kopierten Artikeln auf der Startseite einen zusätzlichen Link zur Artikelkategorie ausgeben?

Unter der Voraussetzung, daß in ergaenz2 der exakte Seitentiten eingetragen ist
-> also z.B. Setentitel = "xyz-test" und in ergaenz2 steht "xyz-test" sollte das so funktionieren:

<!--spmacro:module(print)
sub katlink {
my $index = shift;
my $anzahl = shift;
if ($index <= $anzahl) {
my $kategorie = ssp::get_var_article("ergaenz2", $index);
main::mprint(qq| <a href="$ssp::xxpath?showbyname$kategorie,$ssp::xxsession">$kategorie</a> |);
}
return "noinc";
}
-->


mit __print::katlink__ im loopitem der Vorlage wird dann xyz-test ausgegeben

P.S.: DIESER xyz-test Link funktioniert natürlich nicht - die Seite gibt's  ja nicht ;)
mfG
dobra

connie

Hallo,

danke für die rasche Hilfe, tut mir leid, dass es chaotisch war. Ich schreib ja, dass ich ahnungslos bin. Aber: gut interpretiert, meine Hochachtung :-)

Ich hab den Code jetzt eingebaut und dabei ist leider folgendes Problem aufgetreten (das ich gestern auch schon mal mit einem meiner matschigen Codes hatte, wo ich aber nicht weiter kam):


>>>__print::katlink__1
__simage__1
__produkt__1
__ergaenz1__1


>>>__print::katlink__1 (!!!)
__simage__2
__produkt__2
__ergaenz1__2


>>>__print::katlink__2 (!!!)
__simage__3
__produkt__3
__ergaenz1__3


usw.

Was mach ich falsch? Wieso holt er sich den Link vom vorigen Datensatz?

Danke,
Connie

dobra

Hallo connie,

kann es sein, daß Sie in dieser Vorlage andere Artikel anzeigen, die nicht im loopitem-Bereich stehen?
Dann muß auch hier ein __ergaenz2__ gesetzt werden.
Ist dieses Feld leer, wird nichts angezeigt, aber ShopPilot erwarten die Identifier für alle Artikel.

Ich würde aber vorschlagen, daß Sie für diesen Zweck überhaupt ein neues benutzerdefiniertes Feld anlegen.
Dann bleibt __ergaenz2__ frei verfügbar.

Wenn Sie dieses neue Feld z.B. "KATLINK" nennen, das Script so ändern:
my $kategorie = ssp::get_var_article("KATLINK", $index);

ACHTUNG! benutzerdefinierte Felder müssen in der Abfrage immer groß geschrieben werden!

Unter bestimmten Bedingungen (= auf Verzeichnisseiten) funktioniert das loopitem auch nicht.
Hatte dieses Problem, daß der 1. Artikel doppelt verlinkt wird im meinem neuen Projekt auch

habe jetzt das <!--spmacro:loopitem--> rausgenommen und die Links werden korrekt gesetzt


mfG
dobra

connie

Hallo,

nein, da werden keine anderen Artikel angezeigt auf dieser Vorlage.
__ergaenz2__ wird (jetzt ;-) auch nur dafür verwendet.

Auch das Rausnehmen des loopitem und dafür 5 mal eintragen des ganzen Blocks hat nichts geändert.

Seltsam.
Aber danke für die rasche Antwort,
Connie

dobra

versuchen Sie's mal so:
<!--spmacro:module(print)
sub katlink {
my $index = shift;
my $anzahl = shift;
if ($index <= $anzahl) {
my $kategorie = ssp::get_var_article("ergaenz2", $index);
my $text = ssp::get_var_article("ergaenz2", $index);
main::mprint(qq| <a href="$ssp::xxpath?showbyname$kategorie,$ssp::xxsession">$text</a> |);
}
return "noinc";
}
-->


ist ungetestet - aber vielleicht funktionierts  ::)
mfG
dobra

connie


dobra

hmmmm.........  dann weiß ich leider auch keinen Rat mehr  ???

Habe die 2. Versionen jetzt mal in meinem Testshop eingebaut und da funktioniert es  :D
mfG
dobra

connie

ok, dann liegt es wenigstens sicher an meiner datei *g*.
DANKE auf jeden fall mal.
Connie