2017-11-13 2 views
0

Ich entwickle eine X-Cart 5-Site und muss einen benutzerdefinierten HTML-Code auf der Startseite hinzufügen (ua Storefront).X-Cart 5 Fügen Sie ein benutzerdefiniertes Modul nur zur Homepage oder Storefront hinzu.

Mithilfe der X-Cart-Entwicklungsdokumentation erstellte ich ein benutzerdefiniertes Modul und fügte der Crisp White-Vorlage mithilfe der @ ListChild-Direktive die Änderungen hinzu.

Aber, da ich das ListChild mit list = center.bottom verwendete, zeigt mein kundenspezifisches Modul auf jeder Seite an. Wir möchten, dass der Code nur auf der Startseite angezeigt wird.

Ich habe mehrere Fragen:

  1. Welche Werte @ListChild kann ich nur auf der Homepage das Modul verwenden, um anzuzeigen?

  2. Gibt es eine Website, auf der ich eine Liste aller verfügbaren @ListChild-Werte sehen kann? Ich habe in der X-Cart-Dokumentation gesucht und kann keine Liste verfügbarer ListChild-Positionen finden.

  3. Wenn es mit ListChild nicht möglich ist, weiß ich, dass wir die aktuelle Seite innerhalb der Vorlage abfragen können. Wie kann ich testen, ob die aktuelle Seite die Startseite ist?

Nochmals vielen Dank für die Hilfe.

Antwort

0

1) Sie verwenden eine generische Ansichtsliste, um Ihre Vorlage einzufügen. list = center.bottom ist in der Tat ein Teil jeder Seite. Möglicherweise möchten Sie die Seitenstruktur einer Seite im Webmaster-Modus überprüfen und eine spezifischere Ansichtsliste finden.

Alternativ können Sie Betrachter Klasse erstellen, die Ihre Vorlage angezeigt wird: https://devs.x-cart.com/design_changes/ways-to-apply-design-changes.html#registering-viewer-class-in-view-list

und angeben, welche Seiten auf diese Klasse angezeigt werden soll. Dafür benötigen Sie folgende Methode in Ihrer Viewer-Klasse zu erstellen:

public static function getAllowedTargets() 
{ 
    return array_merge(parent::getAllowedTargets(), array('main')); 
} 

// main ist ein Ziel der Homepage

  1. Es gibt keine Web-Site um alle verfügbaren Ansichtslisten anzuzeigen, aber Sie können sie entweder über den Webmaster-Modus https://devs.x-cart.com/design_changes/ways-to-apply-design-changes.html#seeing-structure-of-specific-page nach einer bestimmten Seite durchsuchen oder Sie können alle ihnen zugewiesenen Ansichtslisten und Vorlagen in der Tabelle xc_view_lists MySQL sehen.

  2. Sie können nicht innerhalb einer Vorlage prüfen, ob, aber Sie können ihren Wert in einer Klasse wie folgt erhalten:

    \XLite\Core\Request::getInstance()->target; 
    
Verwandte Themen