_catalog_ modifizieren ?

Begonnen von Andi, Januar 08, 2005, 22:38:41

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

Andi

Hallo,

auch wenn ich eventl. nerve.. - ich frage trotzdem:

CATALOG-Identifier

Dieses Teil ist nicht schlecht - ich habe ihn für eine
gewisse Zeit getestet (derzeit noch im "Einsatz").
Theoretisch sehr gut - jedoch habe ich so viele
Untergruppen - das macht mir große Probleme, da die
Sache unübersichtlich wird und der Navigationsbereich
soll ja auch nicht unendlich in die Breite gehen.

Also was müsste man machen ??
>> den Catalog-Baum in der Tiefe beschränken
(also z.B. nur 4 Ebenen aufklappen (obwohl mehr da sind).
Da verschiedene Produktgruppen auch verschiedene
Anforderungen haben, müsste man optimalerweise diese
Ebenen im WC direkt bestimmen können.

Es wäre nett, wenn das SP-Team mal was dazu sagt.
(ob das theor. möglich wäre etc. etc. etc.)

Vielen Dank und viele Grüße
von Andi

Nachtrag: 09.01.
Habe den __catalog_-Identifier zwischenzeitlich entfernt
und verlinke (bis es eine eventuelle Lösung gibt) manuell.
Habe auch mal mit den "Tabs" experimentiert - die sind
jedoch zu wenig anpassbar (da von mir untereinander
angeordnet) - geht auch nicht.
Alufelgen - Reifen - Komplettr?der
www.auto-tuning-shop.com

hop

Hallo Andi,

ich könnte mir eine Lösung vorstellen:

__catalog2:5__

dies bedeute von Ebene 2 bis 5 darstellen.

__catalog1:3__

nur bis Ebene 3 darstellen.

Wäre das so ok ?

Gruss hop
Sch?ne Gr??e hop

Andi

Hallo HOP,

das ist eigentlich eine gute Idee.
Wenn das machbar wäre ... wäre das schon was.
Ich könnte diese Lösung so gebrauchen.

Aber (das musste ja jetzt wieder kommen):

Das wäre ja dann eine "globale" Lösung.
Mein Shop als Beispiel genommen, habe ich z.B.
9 Hauptkategorien - alle haben unterschiedlich viele
Unter + nochmal Unterkategorien etc.

Wie sollte man das Handhaben.
Praktischerweise sollte man im WC einstellen können,
ob diese oder jene Kategorie im __catalog__ erscheint.

Da ich kein Programmierer bin, sage ich das einfach so.
Inwieweit das überhaupt umzusetzten ist, muss HOP sagen.
Die erste Lösung wäre - wie gesagt - schon was.
Momentan (siehe mein Shop) habe ich manuell verlinkt,
auch damit könnte man leben - ist bloß Umständlich,
wenn man mal was ändert...

Was sagen denn die anderen Shopbetreiber so ??

Grüße v. Andi
Alufelgen - Reifen - Komplettr?der
www.auto-tuning-shop.com

hop

Hallo,

das Problem ist schon jetzt ziemlich elegant lösbar, und zwar mithilfe der Style-Sheets.

Es wird ja für jede Ebene eine Style Definition hinterlegt:

.menu1 (für erste Ebene nicht selektiert)
.msel1 (für erste Ebene selektiert)

Wenn man möchte, dass eine bestimmte Ebene nicht sichtbar ist, kann man dies in der Style Definition angeben.

z.B.
.menu1 { visibility:hidden; ... }

Man sollte dann noch darauf achten, dass die Höhe des Elments zu Null wird und schon ist die jeweilige Ebene verschwunden. Besonderer Vorteil hierbei, für Suchmaschinen bleibt der Link weiterhin relevant.

Gruss hop
Sch?ne Gr??e hop

Jens Schenck

Lustig, mit dem __catalog__ schlag ich mich auch gerade rum :)

Das Problem bei der Lösung über Stylesheets ist der von Shoppilot erzeugte Quellcode. Der sieht vom ungefähr so aus:

Produkte

   Produkt 1

      Unterprodukt 1

      Unterprodukt 2

   Produkt 2

   Produkt 3


wenn ich über den Stylesheet zB. die Klassen .menu2 und .msel2 auf
visibility:hidden;
bzw besser
display:none; (Nichtanzeige ohne Platzhalter)
setzte, dann bleiben die   und die Zeilenumbrüche (
) leider sichtbar, da sie sich ja nicht im SPAN befinden.
Man kann dann anfangen rumzutricksen, die
-Tags auch auf display:none; und die Links () auf display:block; setzen, allerdings bleiben durch die   leerzeilen.
Gerade wenn man tiefere Ebenen auch ausblenden will, kann man auch nicht mit negativen Abständen rumtricksen, da zwischen den Zeilen unterschiedliche Anzahlen von Leerzeilen auftreten können.

Meine Alternativ-Idee ist, diesen Identifyer per ssp quasi zu simulieren, es fehlt mit allerdings eine Möglichkeit die Unterseiten einer Seite auszulesen. Gibt es da irgendwas, oder müsste ich mir das per Perl selber schreiben?

(Shoppilot v2.10.01)

Danke und Gruß, Jens

hop

Hi,

Unter Porjeckt | Optionen | Darstellungen:

  • Catalog-Identifier vollständig über Style-Sheest formatieren

Dann verschwinden die
und   Zeichen.

Gruß hop
Sch?ne Gr??e hop

Jens Schenck

Prima, das macht das Leben um einiges einfacher...

Zu der zweiten Frage, ich hab da noch eine Idee, bei der ich das brauchen könnte, kann man per ssp irgendwie die Unterseiten einer Seite auslesen?

hop

Hallo,

in der Enterprise 2.20 gibt es die Funktion:

ssp::get_subpages (int )


Als Parameter wird eine beliebige Seitennummer aus dem Shop übergeben, die Funktion gibt ein Array mit allen Seitennummern zurück, die im Shop als Unterseite dieser Seite eingetragen sind.
Gibt es keine Unterseiten zu der angefragten Seite besitzt das erste Element das Arrays den Wert "undefined".

Beispiel für die Erstellung einer eigenen Navigation mit DropDown-Box (Listbox):

Die Auswahl soll mit Hilfe einer Listbox durchgeführt werden und alle Seiten der 1. Ebene darstellen. Die Auswahl soll mit als auch ohne aktiviertem Javascript funktionieren.



__nav::unterebene__ erzeugt die vollständige Listbox .

Gruss hop
Sch?ne Gr??e hop

dobra

Hallo HOP,

an diesem Problem arbeite ich auch gerade.

Bei meinem Frame-shop hatte ich einige Seiten (z.B. "Strickmuster" - Seiten zum anschauen ohne Bestellmöglichkeit) außerhalb des shop-Verzeichnis angelegt und mit "REFRESH" ins Frameset geholt.

Bei Noframe geht das jetzt nicht mehr.
Meine Idee war, die Seiten als Katalogseiten ohne __id__ (also kein Preis und Warenkor sichtbar) anzulegen.
Damit die Navigation übersichtlich bleibt (diese Infoseiten haben 3 Unterebenen - geht also auch nicht mit "Informations-Seite") sollten also - aber NUR bei diesen Seiten - max. 2 Ebenen angezeigt werden.

Zitat von: hop am Januar 10, 2005, 17:38:27

ich könnte mir eine Lösung vorstellen:

__catalog2:5__

dies bedeute von Ebene 2 bis 5 darstellen.

__catalog1:3__

nur bis Ebene 3 darstellen.

Wäre das so ok ?

Gruss hop

hab diese Lösung probiert, aber dann wird der Identiefer  __catalog1:3__ (zumindest bei Live View) vollkommen ignoriert.

mfG
Woll-Insel

mfG
dobra

hop

Hallo,

nein diese Lösung ist nicht realisiert worden. Weil es mit der Stylesheet-Lösung
ebenso geht (siehe oben).
Durch Einbindung unterschiedlicher Styles in die Seite, kann man das Ganze
sehr gut auf Seitenbasis steuern.

Gruss hop
Sch?ne Gr??e hop

dobra

mit Style habe ich es auch probiert - das funktioniert, nur habe ich dann zwar keine Anzeige aber (z.B. bei 12 "versteckten" Seiten) einen sehr großen leeren Abstand.

wie mache ich es, daß "die Höhe des Elementes zu Null wird" (s. Zitat)

     .menu1 (für erste Ebene nicht selektiert)
     .msel1 (für erste Ebene selektiert)

      Wenn man möchte, dass eine bestimmte Ebene nicht sichtbar ist, kann man dies in der Style Definition angeben.

     z.B.
     .menu1 { visibility:hidden; ... }

      Man sollte dann noch darauf achten, dass die Höhe des Elments zu Null wird und schon ist die jeweilige Ebene verschwunden. Besonderer Vorteil hierbei, für Suchmaschinen bleibt der Link weiterhin relevant.
mfG
dobra

hop

wie mache ich es, daß "die Höhe des Elementes zu Null wird" (s. Zitat)

Zitat
Unter Projekt | Optionen | Darstellungen:
Catalog-Identifier vollständig über Style-Sheest formatieren

Dann verschwinden die <br> und die Höhe sollte Null sein.
Sch?ne Gr??e hop

jg

ZitatUnter Projekt | Optionen | Darstellungen:
Catalog-Identifier vollständig über Style-Sheest formatieren
> Dann verschwinden die <br> und die Höhe sollte Null sein.
Dann stehen bei uns alle Links unterhalb einer Hauptkategorie erstmal nebeneinander.
Wie bekomme ich denn die Anzeige dann wieder so hin (ohne <br>), damit alle
Produktkategorien wieder untereinder stehen? Kann man das auch über die
CSS-Datei einstellen?

>  .menu1 { visibility:hidden; ... }
Das funktioniert gut. Danke nochmal für diesen Hinweis.

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

cru

Zitat von: jg am August 22, 2006, 13:36:50
> Dann verschwinden die <br> und die Höhe sollte Null sein.
Dann stehen bei uns alle Links unterhalb einer Hauptkategorie erstmal nebeneinander.
Wie bekomme ich denn die Anzeige dann wieder so hin (ohne <br>), damit alle
Produktkategorien wieder untereinder stehen? Kann man das auch über die
CSS-Datei einstellen?

>  .menu1 { visibility:hidden; ... }
Das funktioniert gut. Danke nochmal für diesen Hinweis.

Grüße, jg


Hallo jg,

das ist ganz einfach.
man muss lediglich die Inline Elemente die ohne <br> natürlich in einer Reihe ohne Umbrüche stehen in Block-Elemente verwandeln.
Das geht über die CSS-Eigenschaft : Display : block ;

also z.B.:
           .menu1 { display: block; ...}
           .msel1 {display: block; ... }
           .menu2 {display:block; ... }
etc.

Gruß
cru


jg

>  .menu1 { display: block; ...}
Danke.

>>  .menu1 { visibility:hidden; ... }
>Das funktioniert gut. Danke nochmal für diesen Hinweis.
Besser ist noch - jetzt in unserem Fall:  .menu1 { display:none; ... } .
Dann verschwindet auch noch der leere Platzhalter der mit visibility:hidden gesetzt wird.

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