Neues Formular in Online Shop Veyton (xtcommerce 4) erstellen

Mitunter werden weitere Formulare für einen Online Shop benötigt. In Veyton können diese relativ einfach selbst erstellt werden.

1. Folgende Dateien kopieren und unter neuem Namen in den gleichen Verzeichnissen speichern

/templates/xt_modified_grafisch_orange/xtCore/forms/contact.html
/xtCore/forms/contact.php

Neue Dateien sind zum Beispiel:

/templates/xt_modified_grafisch_orange/xtCore/forms/accesscustomer.html
/xtCore/forms/accesscustomer.php

In „/xtCore/forms/accesscustomer.php“ ändern -> $tpl = ‚accesscustomer.html‘;

3. Im Backend neue Sprachvariablen anlegen

Im Backend werden neue Sprachvariablen unter „Einstellungen -> Lokalisierung -> Sprachtexte“ für alles genutzten Sprachen angelegt.

Zum Beispiel:

TEXT_ACCESSCUSTOMER_INTRO = "Sie sind Kunde haben aber noch keine Zugangsdaten für unseren Shop. Hier können Sie Ihre Zugangsdaten anfordern."

4. Im Backend neue Contentseite anlegen und Formular integrieren

Im Backend wird eine neue Contentseite unter Inhalte -> Contentmanager -> Content“ angelegt.

Als Contentformular wird accesscustomer.php gewählt, der Status angeklickt und Titel und Name vegeben.

Zum Beispiel:

Titel: Kunde ohne Zugangsdaten
Name: Kunde ohne Zugangsdaten

Die Id für den neuen Content brauchen wir später noch (Id: 10).

5. Falls die Formulardaten an eine andere email-Adresse gesand werden sollen, als an die Standard-Adresse

1. In der Datenbank Tabelle „xt_config_1“ suche „_STORE_CONTACT_EMAIL“ und kopiere die Zeile.

2. Neue Zeile anlegen mit „_STORE_ACCESSCUSTOMER_EMAIL“ und andere email-Adresse definieren.

3. In „/xtCore/forms/accesscustomer.php“ entprechend die neue email-Adresse aufrufen:

Suche:

$contactMail->_addReceiver(_STORE_CONTACT_EMAIL,_STORE_NAME);
$contactMail->_setFrom(_STORE_CONTACT_EMAIL,_STORE_NAME);

Ersetze:

$contactMail->_addReceiver(_STORE_ACCESSCUSTOMER_EMAIL,_STORE_NAME);
$contactMail->_setFrom(_STORE_ACCESSCUSTOMER_EMAIL,_STORE_NAME);

6. Formularfelder anpassen

Entsprechend der benötigten Eingabefelder kann jetzt das neue Formular angepasst werden. Dabei werden die Dateien

/templates/xt_modified_grafisch_orange/xtCore/forms/accesscustomer.html
/xtCore/forms/accesscustomer.php

zusammen editiert. Als Beispiel soll ein neues Eingabefeld für die Kundennummer hinzu kommen:

/templates/xt_modified_grafisch_orange/xtCore/forms/accesscustomer.html:

<tr>
   <td style="white-space:nowrap;"><strong>{txt key=TEXT_CUSTOMER_ID}</strong> </td>
   <td>{form type=text name=customer_id params='maxlength="40" size="40"' value=$customer_id note=*}</td>
</tr>

/xtCore/forms/accesscustomer.php:

$form_check->_checkLenght($_POST['customer_id'], _STORE_LAST_NAME_MIN_LENGTH, ERROR_CUSTOMER_ID);

Fehlende Sprachvariable müssen im Backend definiert werden.

Schreibe einen Kommentar