In diesem Artikel wird Oxid Esales untersucht, eine robuste E-Commerce-Plattform, die sich auf das Themensystem und die Anpassungsfunktionen konzentriert. Teil eins führte die Plattform ein; Dieser Teil befasst sich mit der Erstellung und Änderung der Themen.
Schlüsselkonzepte:
Oxidthemen verstehen:
Oxidthemen funktionieren ähnlich wie in anderen Anwendungen. Sie ermöglichen es Entwicklern und Designern, Daten zu manipulieren, die über Kernbibliotheken, benutzerdefinierte Module und Erweiterungen zugegriffen werden. Die Smarty Engine ermöglicht die PHP-ähnliche Syntax und den vollständigen PHP-Kernzugriff bei Bedarf.
Das folgende header.tpl
Snippet zeigt Smarty -Tags in HTML:
<code>[{assign var="slogoImg" value="logo.png"}] <a href="https://www.php.cn/link/0b49b88c68f7ecbdb73f50496c084a1e" id="logo"> </a> <img src="/static/imghw/default1.png" data-src="https://img.php.cn/" class="lazy" alt="PHP Master | OXID eSales - The E-Commerce Platform that Just Works! 2">oxshops__oxtitleprefix->value}]"> [{oxid_include_widget cl="oxwCategoryTree" cnid=$oView->getCategoryId() sWidgetType="header" _parent=$oView->getClassName() nocookie=1}] [{if $oxcmp_basket->getProductsCount()}] [{assign var="blAnon" value=0}] [{assign var="force_sid" value=$oViewConf->getSessionId()}] [{else}] [{assign var="blAnon" value=1}] [{/if}] [{oxid_include_widget cl="oxwMiniBasket" nocookie=$blAnon force_sid=$force_sid}] [{include file="widget/header/search.tpl"}] [{if $oView->getClassName()=='start' && $oView->getBanners()|@count > 0 }] <div class="oxSlider"> [{include file="widget/promoslider.tpl" }] </div> [{/if}]</code>
oxid bietet benutzerdefinierte Smarty -Plugins unter /core/smarty/plugins
. Das obige Beispiel zeigt bedingte Logik, Vorlageeinschluss und Widget -Verwendung (oxwCategoryTree
, oxwMiniBasket
). Der Datenbankzugriff wird über magische Methoden für Oxidobjekte (z. B. $oxcmp_shop->oxshops__oxtitleprefix->value
) erreicht.
Themendateistruktur (CE 4.7, PE/EE 5.0):
/application/views/<theme>/</theme>
: Vorlagen, Übersetzungen, Konfigurationsdateien. /out/<theme>/</theme>
: öffentliche Dateien (CSS, JavaScript, Bilder). Erstellen eines benutzerdefinierten Themas ("sitepoint"):
Wir werden das Thema "Azure" erweitern. Erstellen Sie application/views/sitepoint/theme.php
:
<code>[{assign var="slogoImg" value="logo.png"}] <a href="https://www.php.cn/link/0b49b88c68f7ecbdb73f50496c084a1e" id="logo"> </a> <img src="/static/imghw/default1.png" data-src="https://img.php.cn/" class="lazy" alt="PHP Master | OXID eSales - The E-Commerce Platform that Just Works! 2">oxshops__oxtitleprefix->value}]"> [{oxid_include_widget cl="oxwCategoryTree" cnid=$oView->getCategoryId() sWidgetType="header" _parent=$oView->getClassName() nocookie=1}] [{if $oxcmp_basket->getProductsCount()}] [{assign var="blAnon" value=0}] [{assign var="force_sid" value=$oViewConf->getSessionId()}] [{else}] [{assign var="blAnon" value=1}] [{/if}] [{oxid_include_widget cl="oxwMiniBasket" nocookie=$blAnon force_sid=$force_sid}] [{include file="widget/header/search.tpl"}] [{if $oView->getClassName()=='start' && $oView->getBanners()|@count > 0 }] <div class="oxSlider"> [{include file="widget/promoslider.tpl" }] </div> [{/if}]</code>
erstellen /out/sitepoint/img
und /out/sitepoint/src
, addieren theme.jpg
und ein modifiziertes logo.png
. Aktivieren Sie das Thema im Administratorbereich. Löschen Sie das Verzeichnis /tmp
, um den Oxid -Cache zu löschen.
Anpassungsbeispiele:
logo.png
Aktualisiert das Logo. application/views/sitepoint/tpl/layout/header.tpl
(kopiert von azure
). application/views/sitepoint/tpl/page/account/dashboard.tpl
ändern und Übersetzungen in application/views/sitepoint/de/cust_lang.php
und application/views/sitepoint/en/cust_lang.php
addieren.
Schlussfolgerung:
Dieser Leitfaden zeigt das Oxid -Themensystem und ermöglicht eine einfache Anpassung. Teil 3 wird die benutzerdefinierte Modulentwicklung für eine erweiterte Anpassung untersuchen.
(Hinweis: Im ursprünglichen Kontext wird angenommen
Das obige ist der detaillierte Inhalt vonPHP Master | Oxid Esales - Die E -Commerce -Plattform, die nur funktioniert! 2. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!