Tipps & Tricks > xt:commerce > Eine neue Box im xt:Commerce Template erstellen

Eine neue Box im xt:Commerce Template erstellen

Hier einmal die Vorgehensweise um von einer vorhandenen Box eine neue Box zu erstellen und über den Contenmanager mit Links auf Inhalte zu versehen.
Dieses Beispiel wird anhand des Standard Templates xtc4 aufgeführt. Hier muss dann natürlich der entsprechende Template Ordner angepasst werden!
WICHTIG: Sicherung nicht vergessen und wir übernehmen keine Gewähr. Wir haben mit xt:Commerce 3.0.4SP2.1 getestet, sollte aber auch mit anderen Versionen funktionieren.

Schritt 1:


in das Verzeichnis:

/template/xtc4/source/boxes

und dort die Datei kopieren von:

box_information.php
nach
box_information_b.php

das gleiche im Verzeichnis:

/template/xtc4/boxes

die Datei
box_information.html
nach
box_information_b.html
kopieren


Schritt 2:

Ändern der Bezeichnungen in der Datei:

box_information_b.php

alle Einträge die "information" heissen mit "information_b" ersetzen.

Auf folgendes muss geachtet werden! (Grossschreibung):

$smarty->assign('box_INFORMATION',$box_information);

ändern auf

$smarty->assign('box_INFORMATION_B',$box_information_b);


Schritt 3:
Änderung des Wertes file_flag von 0 auf 2 in der information_b.php erfolgen (Zeile 41-49):

$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=0 ".$group_check." and content_status=1 order by sort_order";


Hier den Wert ändern von file_flag=0 auf file_flag=2

Danach sollte es so aussehen:

$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 4:
Öffne nun die Datei information_b.html und ändere den Smarty Tag von:

{#heading_infobox#}

auf:

{#heading_information_b_box#}


Beispeil:

<td class="infoBoxHeading">{#heading_information_b_box#}</td>


Schritt 5:
Die neue Box muss nun in der boxes.php eingebunden werden.
Dazu folgende Datei bearbeiten:

/template/xtc4/source/boxes.php

Nach der zeile (24):

require(DIR_WS_BOXES . 'information.php');

folgende Zeile einfügen:

require(DIR_WS_BOXES . 'information_b.php');

Schritt 6:
Nun den Smarty Tag in die index.html des Templates einfügen.

Bearbeite nun die Datei "index.html" im Verzeichnis:

/template/xtc4/

Füge

{$box_INFORMATION_B}

entweder in die Linke oder in die Rechte Boxenleiste ein.

Hier im Beispiel in die linke Box:

<td>{$box_CATEGORIES}{$box_ADD_QUICKIE}{$box_CONTENT}{$box_INFORMATION}
{$box_INFORMATION_B}{$box_LAST_VIEWED}{$box_REVIEWS}{$box_SEARCH}
{$box_SPECIALS}{$box_WHATSNEW}</td>


Schritt 7:
Jetzt noch die Änderung in der Datenbank (mit phpMyAdmin oder ähnlichem).
Suche nun in Deiner Datenbank die Tabelle:

cm_file_flags


Erzeuge einen neuen Eintrag und fülle die Felder wie folgt:

file_flag : 2 (Oder höher / Oben beachten file_flag=2)
file_flag_name : Zusatzinformationen

Dieser Name wird dann in der Auswahlbox des Content-Managers stehen und es steht Dir natürlich frei, einen belibig anderen Namen zu verwenden.

Schritt 8:
Als letztes die Änderungen an der Sprachdatei.

Gehe in des Verzeichnis:

lang/german/


Bearbeite nun die Datei: lang_german.conf

Füge im Abschnitt [boxes] (Zeile 456-495) danach folgendes ein:

heading_information_b_box = 'Zusatzinformationen'

(Das ist natürlich wieder frei wählbar)

Das gleiche gilt für Englisch:

lang/english/lang_english.conf

Jetzt kann der Content erzeugt werden:

Melde dich als Admin im Shop an und gehe dann zum Content-Manager. Erstelle einen neuen Content.
Jetzt solltest du bei "Box" die neue Box "Zusatzinformationen" auswählen können und der Box den neuen Content zuweisen.
Nicht vergessen, auch das Kästchen "Sichtbar" anklicken, da sonst keine Inhalte in der neuen Box erscheinen.

Man kann die Zusatzbox natürlich auch für andere Zwecke verwenden. Dazu kann die Content Manager und Datenbank Erweiterung wegfallen.
 
analoji fen bilgisi