Bild einer Unterkategorie in list.tpl anzeigen

Hallo,

ich bin relativ neu bei OXID und momentan noch am Probieren, ob OXID die richtige Wahl ist. Momentan sieht alles ganz gut aus - die besten kostenlose Shopsoftware die mir bisher unter die Augen gekommen ist.

Nun zu meinem Problem.

Ich würde gern im Azure-Template bei der Anzeige der Unterkategorien nach Klick auf die Hauptkategorie Bilder anstatt der Kategorienamen im mittleren Bereich anzeigen. Im Admin-Bereich kann man ja bequem zu jeder Kategorie verschiedene Bilder (Bild, Icon, Bild für Startseite) hochladen.

In azure/tpl/page/list/list.tpl

gibt es diesen für die Anzeige besagter Bilder zuständigen Bereich:

<div class="content[{if $iconUrl}] catPicOnly[{/if}]">
                                        [{if $iconUrl}]
                                            <div class="subcatPic">
                                                <a href="[{ $category->getLink() }]">
                                                    <img src="[{$category->getIconUrl() }]" alt="[{ $category->oxcategories__oxtitle->value }]">
                                                </a>
                                            </div>
                                        [{/if}]
                                    </div>

Mittels $category->getIconUrl() kann man auch prächtig auf die ICON-Grafik zugreifen. Ich möchte jedoch kein ICON anzeigen, sondern eine Grafik mit einer frei definierebaren Größe. $category->getPictureUrl() war meine Vermutung - die leider nicht funktionert.

Zwar gibt es mit dem Beitrag Unterkategorie-Icons in große Bilder verwandeln bereits einen Thread zum Thema - jedoch befriedigt mich die dort angebotene Lösung, das Bild auf dem Server via FTP direkt auszutauschen nicht. Gibt es eine elegantere Lösung bzw. wie greife ich an dieser Stelle auf die anderen Bilder zu, die man im Admin-Bereich hinterlegen kann?

Grüße,
Hotte

Ich bin etwas weiter gekommen. Und zwar habe ich mit mittels [{$category|@print_r:1}] den Inhalt von $category (oxCategory Object) ausgeben lassen. Dort findet sich zwar das über category->getIconUrl() addressierbare Icon (oxcategories__oxicon) - von dem im Backend bei “Bild hochladen” hinzufügbaren Bild fehlt leider jede Spur. Ist dies an dieser Stelle tatsächlich nicht aufrufbar?

Grüße,
Hotte

Die Bilder werden alle skaliert, und die Größe der Kategorie-Icons lässt sich im Theme einstellen. Wenn du trotzdem Picture oder Thumb verwenden willst:
http://www.musterdenker.de/2009/09/oxid-eshop-enable-lazy-loading-for-categories/

Bei getPictureUrl etc. unbedingt abfragen ob ein Wert zurückkommt, denn ein Bild ohne Url lädt die Startseite anstatt dem Bild.

@leofonic: Danke für die Antwort. Auf die Idee, in den Einstellungen des Templates nach einstellbaren Größen für die Bildtypen bin ich irgendwie nicht gekommen. :wink:

Dennoch würde mir die “Lazyloading-Methode” besser gefallen - doch wie “aktiviere” ich
das Ganze? Die Erklärungen auf der verlinkten Seite haben mich leider nicht zum Ziel
geführt:

Ist es richtig, mude_lazyloading.php in /modules mude_lazyloading.php zu platzieren?
Wo genau muss ich in meinem Fall (getPictureUrl bzw. getThumbUrl in list.tpl)
“CLASSNAME => mude_lazyloading” hinzufügen?

Größe,
Hotte

Ja, /modules/mude_lazyloading.php ist richtig. Der Moduleintrag ist dann:
oxcategory => mude_lazyloading
Diese Zeile musst du im Admin bei Stammdaten/Grundeistellungen/System/Module hinzufügen.

Alles klar - danke für den Hinweis - so langsam beginne ich das OXID-System zu verstehen. :wink:

Grüße,
Hotte