Ein neues Templating-Konzept für OXID

Bin gerade ein wenig am ausprobieren; für mich noch etwas zu früh, da für mich smarty eher Neuland ist. Nun hab ich mal zur Anschauung das Powertemplate eingebunden, und da haben sich drei Fragen ergeben:

http://img27.imageshack.us/img27/6167/startseitemitpowertempl.gif

Nehme an, dass dies nicht normal ist…Die obere Box, da wird wohl was im CSS Sheet verrutscht sein, beim oberen, linken Absatz wohl eher auch…

Dass die Produkte frisch eingetroffen gleich zweimal angezeigt werden, ist wohl nicht so gewollt…Hab das Template gemäss Avengers anweisungen gemacht, Temp-Ordner ist auch gelöscht…

Hallo Zusammen,

Ich habe heute auch versucht, dein Template einzubinden, aber irgendwas ist schief gelaufen. Nach den Änderungen der Anleitung bekomme ich nur noch eine weiße Seite.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=windows-1252" http-equiv=Content-Type></HEAD>
<BODY></BODY></HTML>

Irgendwie kann Oxid das Templae wohl nicht reinladen… Obwohl config.inc.php geändert ist auf powertemplate.

[QUOTE=Joerg74;14898]Hallo Zusammen,

Ich habe heute auch versucht, dein Template einzubinden, aber irgendwas ist schief gelaufen. Nach den Änderungen der Anleitung bekomme ich nur noch eine weiße Seite.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=windows-1252" http-equiv=Content-Type></HEAD>
<BODY></BODY></HTML>

Irgendwie kann OXID das Templae wohl nicht reinladen… Obwohl config.inc.php geändert ist auf powertemplate.[/QUOTE]
Da ist irgendwas total falsch…

Das Template hat fogenden DOCTYPE_

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “http://www.w3.org/TR/html4/strict.dtd”>

und nicht den hier gezeigten.

Aber ein Problemdiagnose ist aus der Ferne leider nicht möglich…

[QUOTE=Zekiri GmbH;14896]Bin gerade ein wenig am ausprobieren; für mich noch etwas zu früh, da für mich smarty eher Neuland ist. Nun hab ich mal zur Anschauung das Powertemplate eingebunden, und da haben sich drei Fragen ergeben:

http://img27.imageshack.us/img27/6167/startseitemitpowertempl.gif

Nehme an, dass dies nicht normal ist…Die obere Box, da wird wohl was im CSS Sheet verrutscht sein, beim oberen, linken Absatz wohl eher auch…

Dass die Produkte frisch eingetroffen gleich zweimal angezeigt werden, ist wohl nicht so gewollt…Hab das Template gemäss Avengers anweisungen gemacht, Temp-Ordner ist auch gelöscht…[/QUOTE]
Das Template ändert nur die Definition des Aufbaus der Seite, inhaltliche Änderungen finden [B]nicht [/B]statt…

Es verwendet daher natürlich weiterhin die CSS-Anweisungen, die es im Shop vorfindet, und damit erscheint die “[B]Service[/B]”-Box halt in dieser From an dieser Stelle.

“[B]Frisch eingetroffen[/B]” habe ich auch als Box implementiert, weil mir das besser gefällt.

Du kannst dann entweder die Referenz zur “[{[B]box_WHATSNEW[/B]}]” aus dem “[B]_index.tpl[/B]”-Template löschen, oder in OXID die Anzeige der neuen Produkte deaktivieren, je nachdem, wo Du diese Info gerne hättest.

[QUOTE=avenger;14900]Das Template ändert nur die Definition des Aufbaus der Seite, inhaltliche Änderungen finden [B]nicht [/B]statt…

Es verwendet daher natürlich weiterhin die CSS-Anweisungen, die es im Shop vorfindet, und damit erscheint die “[B]Service[/B]”-Box halt in dieser From an dieser Stelle.

“[B]Frisch eingetroffen[/B]” habe ich auch als Box implementiert, weil mir das besser gefällt.

Du kannst dann entweder die Referenz zur “[{[B]box_WHATSNEW[/B]}]” aus dem “[B]_index.tpl[/B]”-Template löschen, oder in OXID die Anzeige der neuen Produkte deaktivieren, je nachdem, wo Du diese Info gerne hättest.[/QUOTE]

Ok, Danke für die Info, habs bereits auskommentiert, so dass die Box “frisch eingetroffen” auf der linken Seite anschaubar ist. Ist echt übersichtlicher so; allerdings haperts noch mit meinen Smarty - Kentnissen :smiley:

[QUOTE=Zekiri GmbH;14902]Ok, Danke für die Info, habs bereits auskommentiert, so dass die Box “frisch eingetroffen” auf der linken Seite anschaubar ist. Ist echt übersichtlicher so; allerdings haperts noch mit meinen Smarty - Kentnissen :D[/QUOTE]
Das entfernen von “Frisch eingetroffen” im Mittelteil braucht man nicht im Template auszukommentieren, das kann man in der Admin-Shop-Steuerung abschalten.

[QUOTE=avenger;14903]Das entfernen von “Frisch eingetroffen” im Mittelteil braucht man nicht im Template auszukommentieren, das kann man in der Admin-Shop-Steuerung abschalten.[/QUOTE]

Nochmals Danke - ich merke, ich hab noch viel zu lernen :rolleyes:

Danke für die Überarbeitung. Ist nun viel übersichtlicher.

Jedoch wird bei mir das Zommbild-Fenster bei den Artikeldetails viel zu klein angezeigt.
Mit dem Basic Template funktionierte es noch.

Hallo avenger,

erstmal danke für die Überarbeitung. Übersicht und Wartbarkeit sind enorm gestiegen.
Was mir aufgefallen ist, dass die Variablen $location und $isStart keinen Wert haben und somit der Pfad nicht angezeigt wird. Mit den Original Templates funzt es.
Über [{debug}] sind die Variablen nicht mehr in der Liste.


Hat sich erledigt. Wer lesen kann ist klar im Vorteil :slight_smile:
_boxes.php ausgetauscht und schon gehts.

[QUOTE=DevilRN;15326]
Jedoch wird bei mir das Zommbild-Fenster bei den Artikeldetails viel zu klein angezeigt.
Mit dem Basic Template funktionierte es noch.[/QUOTE]

Bin ich der Einzige mit diesem Problem?
Sie Screenshot!

[QUOTE=DevilRN;15586]Bin ich der Einzige mit diesem Problem?[/QUOTE]
Nein, das ist tatsächlich so.

Warum, weiß ich noch nicht, muss ich mal “gucken”…

[QUOTE=avenger;15589] Warum, weiß ich noch nicht, muss ich mal “gucken”…[/QUOTE]
Ich habe jetzt mal “geguckt”…

Das war ein ganz heimtückisches Ding.

Das Problem war, dass das Popup-Window nicht “resized” wurde auf die gewohnte Größe.

Mit dem Javascript-Debugger von FireBug konnte ich aber nachvollziehen, dass die “Resize”-Routine angesteuert wurde, nur war der Popup-Bereich, der “resized” werden sollte zum Zeitpunkt der Aktivierung im DOM noch nicht verfügbar…

Ursache war die folgende:

<script type="text/javascript">[{oxscript}][{oxid_include_dynamic file="dyn/oxscript.tpl" }]</script>

Im Zuge der Umstrukturierung des Templates, hatte ich (ordentlich, wie ich nun mal bin) das vorstehende “[B][/B]”-Tag aus der “[B]_footer.tpl[/B]” in den “”-Bereich der “[B]_index.tpl[/B]” verlagert, wo es eigentlich hingehört…

Allerdings führte das eben dazu, dass die “Resize”-Routine zu früh angesteuert wurde, so dass das nicht funktionierte…

Nachdem ich das o.g. “[B][/B]”-Tag dann an das Ende der “[B]_index.tpl[/B]” verlagert habe, funktioniert das Popup wieder.

Allerdings ist das sehr unschön, weil eben darauf vertraut wird, dass der Browser so weit ist mit dem DOM, wenn diese Routinen (und andere) aufgerufen werden…

<script type="text/javascript">oxid.blank('sbookmarks.misterWong');oxid.blank('sbookmarks.webnews');oxid.blank('sbookmarks.icio');oxid.blank('sbookmarks.folkd');oxid.blank('sbookmarks.yigg');oxid.blank('sbookmarks.delicious');oxid.blank('sbookmarks.yahoo');oxid.blank('sbookmarks.google');oxid.blank('sbookmarks.yieeha');oxid.blank('ts.membership');oxid.blank('link.zendSite');oxid.catnav('mn.categories');oxid.popup.addResizer('zoom_img','zoom',4,32);oxid.image('zoom_img','http://localhost/seifenparadies/oxid_new_template/out/pictures/z1/1964_z1.jpg');
</script>

Das ist der letztendlich generierte “[B][/B]”-Tag.

Eigentlich dürften alle diese Javascript-Routinen erst im “[B]window.onload[/B]”-Event des Browsers ausgeführt werden, weil man nur dann sicher ist, dass das Seiten-DOM vollständig vorliegt.

(Man könnte das sicher auch schon im “[B]domready[/B]”-Event starten.)

Und dann könnte der “[B][/B]”-Tag auch wieder dahin, wo er hingehört: in den “[B][/B]”-Bereich.

Das könnte man mit wenigen Änderungen erreichen…

Statt wie jetzt die ganzen Javascript-Aufrufe direkt auszuführen, packt man sie in folgende Struktur.

Dann klappt das.

<script type="text/javascript">
function oxid_init()
{
    oxid.blank('sbookmarks.misterWong');
    oxid.blank('sbookmarks.webnews');
    oxid.blank('sbookmarks.icio');
    oxid.blank('sbookmarks.folkd');
    oxid.blank('sbookmarks.yigg');
    oxid.blank('sbookmarks.delicious');
    oxid.blank('sbookmarks.yahoo');
    oxid.blank('sbookmarks.google');
    oxid.blank('sbookmarks.yieeha');
    oxid.blank('ts.membership');
    oxid.blank('link.zendSite');
    oxid.catnav('mn.categories');
    oxid.popup.addResizer('zoom_img','zoom',4,32);
    oxid.image('zoom_img','http://localhost/seifenparadies/oxid_new_template/out/pictures/z1/1964_z1.jpg');
}

window.onload=oxid_init;
</script>

Das kann ich sogar im Template so ändern… (Ist was für die nächste Version.)

Das angepasste Template ist im Anhang.

Super, jetzt funktioniert’s wie es soll.

Danke!

Wenn es mehrere Zoombilder bei einem Artikel gibt, wird der Rahmen noch immer zu klein angezeigt.
Bei nur einem Zoombild stimmt die Größe.

Ich habe noch einen kleinen Fehler entdeckt. Habe den Fehler zwar schon in einem anderen Thread beschrieben, habe jetzt aber bemerkt dass der Fehler nur bei aktiviertem Powertemplate auftritt.

Bei den CMS Seiten wird der Text durcheinander gewürfelt. Öffne ich die zB die CMS-Seite 1, hat diese zwar die richte Überschrift, aber den Text von CMS-Seite 2. Und das ist bei allen CMS-Seiten so.

Beim basic Template passt die Ausgabe.

Also ich habe keine Probleme mit den CMS Seiten unter Power-Template.

[QUOTE=DevilRN;16356]Ich habe noch einen kleinen Fehler entdeckt. Habe den Fehler zwar schon in einem anderen Thread beschrieben, habe jetzt aber bemerkt dass der Fehler nur bei aktiviertem Powertemplate auftritt.

Bei den CMS Seiten wird der Text durcheinander gewürfelt. Öffne ich die zB die CMS-Seite 1, hat diese zwar die richte Überschrift, aber den Text von CMS-Seite 2. Und das ist bei allen CMS-Seiten so.

Beim basic Template passt die Ausgabe.[/QUOTE]
Das kann eigentlich nichts mit der Umstrukturierung zu tun haben, da diese ja nur bei den “Boxen” echte Änderungen gebracht hat.

Alle anderen Templates sind so geblieben, wie sie waren.

Habe heute wieder stundenlang getestet. Der Fehler tritt wirklich auch im Basic-Template auf.
Vielleicht kann mir trotzdem jemand weiterhelfen. Ich hoffe es ist ok dass ich einen eigenen Thread für mein Problem eröffnet habe: http://www.oxid-esales.com/forum/showthread.php?t=2797

Den Fehler habe ich nur bei CMS-Seiten. Ansonsten funktioniert der Shop ohne Probleme.

Danke!

Muß ich eigendlich was besonderes beachten, wennn ich das Powertemplate verwende und auf die neue Oxid-Version 4.2.0 updaten will?

Nein, eigentlich nicht…