HowTo:Eine eigene Box erstellen
HowTo: Eine eigene Content - Box erstellen
Mit der WEB-Shop Software könnt Ihr eigene "Boxen" für Inhalte des Content Managers (wie z. B. die Box 'Information') erstellen. Und zwar ohne Dateien des eigentlichen "Shops" selber verändern zu müssen. Es reichen Modifikationen innerhalb Eures Templates.
Beispiel: Erstellen der Box 'neueBox'
Hier folgt eine Schritt für Schritt Anleitung um eine eigene Box zu erstellen (am Beispiel des gunnart-Templates). Bitte sichert vorher Eure Daten. Ihr solltet solche "Tests" auf keinen Fall am Live-Shop, sondern an einem Test-Shop durchführen. Die Anleitung ist ohne Gewähr.
Schritt 1: Dateien kopieren
im Verzeichnis:
/templates/deintemplate/source/boxes die Datei: information.php duplizieren und umbenennen von:
information.php nach neuebox.php
das gleiche im Verzeichnis:
/template/deintemplate/boxes
die Datei box_information.html duplizieren und umbenennen in box_neuebox.html
Schritt 2: .php Datei modifizieren
neuebox.php alle Einträge "information" suchen und durch "neuebox" ersetzten.
Achtung in Zeile 80, ganz unten! (Grossschreibung):
$smarty->assign('box_INFORMATION',$box_information);
ändern auf
$smarty->assign('box_NEUEBOX',$box_neuebox);
Änderung des Wertes file_flag von 0 auf 2 (bzw. höchster Wert +1) in der neuebox.php erfolgen (Zeile 48):
... and file_flag=0 ".$group_check." and content_status=1 order by sort_order";
So sieht der Abschnitt dann aus:
$content_query = "SELECT content_id, categories_id, parent_id, content_title, content_group FROM ".TABLE_CONTENT_MANAGER." WHERE languages_id='".(int) $_SESSION['languages_id']."' and file_flag=2 ".$group_check." and content_status=1 order by sort_order";
Schritt 3: .html Datei modifizieren
Öffne nun die Datei neuebox.html und ändere den Smarty Tag in Zeile2 von:
{snippet file=box_head.html heading=#heading_infobox# class=boxInfoLS id=box_information}
in:
{snippet file=box_head.html heading=#heading_neuebox# class=boxInfoLS id=box_neuebox}
Schritt 4: Einbinden in die boxes.php
Die neue Box muss nun in der boxes.php eingebunden werden.
Dazu folgende Datei bearbeiten: /templates/dein Template/source/boxes.php
Unter "// immer sichtbar" ab Zeile 29, die Zeile:
require(DIR_WS_BOXES . 'neuebox.php');
einfügen.
Schritt 5: Einbinden in die index.html
Nun den Smarty Tag in die index.html des Templates einfügen.
Bearbeite nun die Datei "index.html" im Verzeichnis:
/templates/dein Template/
Füge {$box_NEUEBOX} entweder in die Linke oder in die Rechte( #col1 oder #col2) Seite ein.
Hier im Beispiel in die rechte Box:
{* begin: #col2 second float column *} <div id="col2"> <div id="col2_content" class="clearfix"> {$box_SEARCH} {$box_CART} {$box_LOGIN} {$box_NEUEBOX} {$box_ADMIN} {$box_LIVE_SHOPPING} {$box_NEWSLETTER} {$box_BESTSELLERS} {$box_INFOBOX} {$box_INFORMATION} {$box_CURRENCIES} {$box_LANGUAGES} {$box_MANUFACTURERS_INFO} {$box_MANUFACTURERS} </div> </div> {* end: #col2 *}
Nun den Smarty Tag in die index.html des Templates einfügen.
Bearbeite nun die Datei "index.html" im Verzeichnis:
/templates/dein Template/
Füge {$box_NEUEBOX} entweder in die Linke oder in die Rechte( #col1 oder #col2) Seite ein.
Hier im Beispiel in die rechte Box:
Code: Alles auswählen
{* begin: #col2 second float column *}
{$box_SEARCH} {$box_CART} {$box_LOGIN} {$box_NEUEBOX} {$box_ADMIN} {$box_LIVE_SHOPPING} {$box_NEWSLETTER} {$box_BESTSELLERS} {$box_INFOBOX} {$box_INFORMATION} {$box_CURRENCIES} {$box_LANGUAGES} {$box_MANUFACTURERS_INFO} {$box_MANUFACTURERS}
{* end: #col2 *}
Schritt 6: Änderung in der Datenbank
Suche nun in Deiner Datenbank die Tabelle: cm_file_flags und führe folgenden SQL-Befehl aus (nach dem Du eine Sicherung der Datenbank angelegt hast):
INSERT INTO `cm_file_flags` ( `file_flag` , `file_flag_name` ) VALUES ( '2', 'neuebox' );
Wenn der Wert 2 für file_flag schon verwendet wird, bitte den nächst höheren Wert verwenden. (s.a. Schritt 2)
Mit "neuebox" bezeichnet, findet sich dann die Box im Content Manager.
Schritt 7: Änderung an der Sprachdatei
Im Verzeichnis:
template/deintemplate/lang/german/
In der Datei: lang_german.conf
Füge im Abschnitt [boxes] folgendes ein:
heading_neuebox = 'Neue Box' (Das wird über der neuen Box stehen.)
Das gleiche für Englisch:
template/deintemplate/lang/english/lang_english.conf
Bitte die Änderungen nicht im Shop Ordner /lang/ vornehmen, da diese bei einem Update überschrieben werden könnten!
Jetzt kannst Du Dich im Admin anmelden und unter Content Manager, "neuer Conten" den Inhalt für die Box erzeugen.
Diese Anleitung wurde von der Foren-Userin Dany erstellt und basiert auf der Anleitung von http://www.suchmaschinen-optimierung-templates.de/xt-commerce-template/eine-neue-box-im-xt-commerce-template-erstellen.html