Einschleusen von händlerabhängigem HTML Code in Vorlagen möglich?

Begonnen von 1nelly1, November 27, 2009, 16:30:57

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

1nelly1

Hallo,
ich würde gerne in Erfahrung bringen, ob es eine Möglichkeit gibt, händlerspezifischen HTML Code in Vorlagen (z.B. Produktseite, Template) einzuschleusen, so dass dieser nicht von jedem Händler gesehen/verarbeitet wird.

Als Lösung fällt mir ein in den händlerspezifischen CSS-Dateien ausreichend class und id als Reserve vorzusehen und diese dann mit display: none; vorzubelegen.
Eine andere Lösung wäre, den HTML Code in eine einfache Textdatei (.txt) zu schreiben und den Pfad zu dieser Datei in einem benutzerdefinierten Händlerfeld einzutragen und diesen dann in der Vorlage mittels des Identifiers einfügen zu lassen. Das gibt es wohl aber nicht. Was geht, ist den HTML Code in einem langen Textfeld (wie lang maximal?) einzutragen, was nicht so komfortabel ist. Außerdem scheinen dann darin enthaltene Identifier keine Wirkung zu entfalten.

Welche Vorgensweise ist empfehlenswert?
Viele Grüße   

dobra

Hallo 1nelly1,

also wenn jeder Händler auch einen Subkatalog zugewiesen hat, ist die einfachste Möglichkeit, die Vorlagen für die Subcats zu modifizieren.
Hier kann dann beliebiger HTML-Code geschrieben werden und ist nur in DEM Subkatalog/für DIESEN Händler sichtbar.

"display:none" ist keine gute Idee - das wird zwar auf der Seite nicht angezeigt, kann aber von jedem im Quelltext gelesen werden.
mfG
dobra

1nelly1

Hallo dobra,
vielen Dank für den Kommentar. Ich sehe die Subkataloge eher als Möglichkeit, ein komplett anderes Design für einen Händler zu erstellen, das sich in seinem Seitenaufbau wirklich unterscheidet. Oder wenn eben nicht alle Artikel von allen Händlern geführt werden sollen. Dann ergeben sich auch automatisch Subkataloge. Wenn ich z. B. nur einen Menübutton mit Link bei einem Händler hinzufügen will, den andere Händler nicht haben, dann wäre ein eigener Subkatalog in meinen Augen das Schießen mit Kanonen auf Spatzen. Ja, wenn es sich um sensible Informationen handelt, sollte man wohl besser einen Subkatalog nehmen, obwohl ich mal vermute, dass sich nicht viele Händler finden werden, die Quelltexte inspizieren. Wenn man in dem händlerspezifischen HTML Code wiederum benutzerdefinierte Händlerfelder einsetzt, dann sehen aber auch sie nichts, was sie nicht sehen sollen.
Viele Grüße 1nelly1

dobra

na dann versuch's mal so:

<!--spmacro:module(check)
sub merch {
my $out;
my $hid = ssp::get_var_merch ('hid');
if ($hid == 1000002) {
$out = qq|
beliebiger HTML-Code für Händler 2
|; }
if ($hid == 1000003) {
$out = qq|
beliebiger HTML-Code für Händler 3
|; }
main::mprint ($out);
}
-->


mit __check::merch__  wird dann der jeweilige HTML-Code NUR für diesen Händler ausgegeben
mfG
dobra

1nelly1

Hallo dobra,
das klappt prima. Sehr nett. Vielen Dank.
Viele Grüße 1nelly1

jg

Hallo 1nelly1,

noch ein paar Anmerkungen zu deinem Thema...

Bei uns laufen in _einem_ Shoppilot-System etwa 30 Händler-IDs (davon 4x Großhandel
und 26x Einzelhandel, 4-sprachig), 10 Subkataloge, 7000 Kunden und etwa 13000 Artikel.

> Ich sehe die Subkataloge eher als Möglichkeit, ein komplett anderes Design für
> einen Händler zu erstellen, das sich in seinem Seitenaufbau wirklich unterscheidet.
Die Subkataloge sind bei uns im Prinzip den unterschiedlichen Sprachen vorbehalten.
Die unterschiedlichen Designs werden komplett über CSS-Styles gesteuert
und sind damit sehr individuell anpassbar. Die Layouts haben bei uns nichts
mit den Subkatalogen zu tun.

Um nicht die Übersicht zu verlieren und möglichst flexibel im Design und Code
zu bleiben, sind unsere HTML-Vorlagen ausschließlich mit Platzhaltern gespickt.
Die Platzhalter wiederum verweisen in Dateien bzw. Perl-Code, der die jeweiligen
Händlerinhalte über entsprechende Abfragen richtig einfügt.
Den Code von Dobra z.B. würden wir dann ausgelagern und nicht mehr direkt
in die Vorlagen schreiben. Da sieht man irgendwann nicht mehr durch, wenn das
System größer wird. Auch sind bei uns TEXT/HTML-Inhalte streng getrennt
von CODE. Wir versuchen, das eine mit dem anderen nicht mehr zu vermischen.
Unsere Händler können so ihre Text- bzw. HTML-Inhalte und auch die CSS-Datei
für's Layout per FTP oder CMS selbst verwalten.

Weiter unten mal ein vereinfachtes Beispiel unserer Vorlage für die Startseite.
Vielleicht gibt dir das ja für deinen Shop neue Ideen...

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 
  <head>
    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
    __css::showcss__
  </head>
 
  <body>

  <!-- Oben -->
  <div class="top" id="oben">
    <!--spmacro:include(oben.htm)-->
  </div> 
  <!-- //Oben -->
  <div> 
  <!-- Links -->
  <div class="left">
    <!--spmacro:include(links.htm)-->
  </div>
  <!-- //Links -->
 
  <!-- Rechts -->   
  <div class="right">
    <!--spmacro:include(rechts.htm)-->
  </div>
  <!-- //Rechts -->
 
  <!-- Content -->
  <div class="content" id="content1">
    <div class="mitte">
      __text::start__
    </div>
  </div>
  <!-- Content -->
  </div>
  <div class="clear"></div>
  <div class="foot">
    __content::footer__
  </div>   

  </body>
</html>

--
www.schmuckzone.de

dobra

kleiner Tipp zu
<!--spmacro:include(oben.htm)-->
...

Die "alternativen Demoshops" sind alle so gebaut.
Zum Testen wie das funktioniert mal einen davon runterladen und anschauen
(für mich die Ideal-Lösung da - wie jg schon sagte - äußerst flexibel)
mfG
dobra

1nelly1

Hallo jg und dobra,
vielen Dank für Eure Ausführungen.

Ich habe die grundsätzliche Idee von jg verstanden. Letztlich war diese Überlegung auch Hintergrund meiner Frage. Du hast wirklich viel ausgelagert und damit maximale Flexibilität. Das wird bei mir nicht nötig sein. Denn je ähnlicher sich die Händler sind, umso weniger ist diese Flexibilität nötig. Ich will nur bemerken, dass aber auch Deine Beispielstartseite eine Struktur definiert. Wolltest Du diese Struktur ändern (z. B. 4 Spalten), dann müsstest Du wohl einen Subkatalog einsetzen. Ich schreibe das nur, um zu sagen, dass der Einsatz eines Subkataloges schon etwas mit Design zu tun haben kann. Irgendwie scheint mir der Subkataloges ein Rettungsanker für vieles zu sein, wenn es anders nicht weiter geht.

Viele Grüße
1nelly1

jg

> Wolltest Du diese Struktur ändern (z. B. 4 Spalten), dann müsstest Du wohl einen Subkatalog einsetzen.
Ja, das machen wir auch.
Subk 1-3 für Struktur 1 (Großhandel DE, ENG, FR),
Subk 4-6 für Struktur 2 (Einzelhandel DE, ENG, FR)

Aber theoretisch könnte man auch das umgehen und die einzelnen 'Strukturen'
nur per Code steuern. Ist dann aber eher was für Genies, nichts mehr für mich... ;)

> Ich schreibe das nur, um zu sagen, dass der Einsatz eines Subkataloges schon etwas mit Design zu tun haben kann.
Natürlich. Subkats lassen sich für verschiedene Dinge verwenden.

jg

--
www.schmuckzone.de