Franz Holzinger

Verse of the day

Wer sich aber rühmt, der rühme sich des HERRN. Denn darum ist einer nicht tüchtig, daß er sich selbst lobt, sondern daß ihn der HERR lobt.
2 Korinther 10:17-18

© Bible Gateway's Verse of the Day


autor  
7-12-15 22:42:54 Eigene Marker im Block DELIVERY
Alexander Kalinowski
Hallo!

Ich würde gern den Block für für die Lieferanschrift mit zusätzlichen Angaben versehen, die dann in der Bestätigungsmail und in der der Bestellung selbst gespeichert werden.

Gibts es irgendwo eine idiotensichere Anleitung, wie ich es mit tt_products 2.8.1 erstellen kann?

Alternativ:
Gibt es irgendwo eine komplette Auflistung der Marker für das Feld "###DELIVERY_......###"?

Vielen Dank im Voraus!
8-12-15 07:55:37 feuserextrafields
Franz Holzinger
Es gibt die Extension feuserextrafields von Bert Hiddink.

http://typo3.org/extensions/repository/view/feuserextrafields

Diese bietet bereits eine große Auswahl an zusätzlichen Feldern für einen Frontend Benutzer.

Aber andererseits genügt es, über den Extension Kickstarter selber eine Extension erzeugen zu lassen. Die von dieser Extension verwendeten Felder sind dann auch in tt_products sichtbar, wenn der Hook extendingTCA vorhanden ist.

Einfach in der Datei ext_localconf.php das eintragen (nur für TYPO3 4.5 - 6.0 notwendig):
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['tt_products']['extendingTCA'][] = $_EXTKEY;

Für andere Angaben als FE Benutzerdaten gibt es bereits Beispiel Extensions im TYPO3 TER. Am besten diese kopieren und dann abändern.

Die tt_products Marker sind hier beschrieben:

https://wiki.typo3.org/Tt_products_marker

Eine detaillierte Auflistung der Marker bekommt man durch das Einfügen einer Debug Anweisung in der Datei class.tx_ttproducts_basket_view.php.

debug ($markerArray, '$markerArray');

Am besten direkt vor dem Aufruf "$this->cObj->substituteMarkerArray".

Über die Extension fh_debug lassen sich debug Ausgaben in eine Datei umleiten.
9-12-15 15:57:13 TYPO3 6.2.15
Alexander Kalinowski
Danke für die Antwort!

Benutze TYPO3 6.2.15 und Kickstarter wäre schön, nur funktioniert er nicht mehr unter 6.2, soviel ich weiss. Oder gibt es da ein Workaround?

Habe mit die EXT feuserextrafields installiert, nur leider hab ich nicht die leiseste Ahnung wie, wo und was ich davon nun in meinem System sehen soll. Es taucht nichts davon irgendwo auf.

Gibt es auch die Möglichkeit mit Extension Builder Felder zu erweitern?
Vielleicht ist die Frage ja zu dumm, weil ich nicht genau weiss was Extension Builder macht, hab nur davon gelesen.

Werde versuchen die Marker auszulesen und dann diese für mein Vorhaben missbrauchen, obwohl das leider nicht die saubere Lösung ist.
9-12-15 19:22:35 Extension Builder
Franz Holzinger
Laut Beschreibung ist es auch mit dem Extension Builder möglich, neue Felder hinzuzufügen. Allerdings befürchte ich, dass das TCA dann innerhalb des Verzeichnisses Configuration/TCA angelegt wird. Das funktioniert aber erst mit der nächsten tt_products 2.12.0 zusammen. Für die früheren tt_products müsste deshalb der Extension Kickstarter verwendet werden oder die tca.php müsste dann durch Include-Anweisungen erweitert werden, welche die Dateien unterhalb von Configuration/TCA einbinden, falls kein tt_products 2.12.0 installiert ist.

Es gibt aber eine Reihe von Extensions im TYPO3 TER, die bereits tt_products um Felder erweitern. Diese könnte man kopieren und manuell anpassen.
14-12-15 11:38:17 GELÖST
Alexander Kalinowski
Danke, Herr Holzinger!

nach langem herumprobieren habe nun das Problem gelöst, sogar gleich auf zwei unterschiedlichen wegen.

Falls jemand auch davor steht, hier kurz wie ich vorgegangen bin:

Lösung 1:
wie oben geschrieben die EXT "feuserextrafields" (http://typo3.org/extensions/repository/view/feuserextrafields) installieren. Danach erscheinen im BE, im Bereich jeden Benutzers, unter dem Reiter "Erweitert", mehre zusätzliche Felder.
Diese können entweder direkt befühlt werden und im FE ausgegeben, oder diese kann man auch für andere Zwecke nutzen (wie ich es getan hab) - bei der Eingabe der Daten in der Lieferanschrift einfach (für das Feld Postbox z.b.)
<input type="text" name="recs[delivery][tx_feuserextrafields_pobox]" size="30" id="delivery_tx_feuserextrafields_pobox" />
eingeben, und schon werden die Daten übermittelt und gespeichert.
Für die Ausgabe wäre hier der Marker ###DELIVERY_TX_FEUSEREXTRAFIELDS_POBOX### relevant.

Alle möglichen Felder sind in der class.tx_ttproducts_info_view.php, Ab Zeile 104 ("// if feuserextrafields is loaded use also these extra fields") zu finden.

Lösung 2:
Benutze die EXT "femanager" für die Ausgabe und Bearbeitung der fe_user Daten. Dort ist sehr gut und einfach beschrieben, wie man neue Felder für die Tabelle fe_users anlegt.
Eine Beispiel EXT "femanagerextended" kann sogar benutzt werden, an einigen stellen angepasst werden, und schon hat man individuelle Felder. Alles ist im Extension Manual von "femanager" genau beschrieben.

Eingebunden werden die Felder wie bei Lösung 1, nur etwas verändert. Hier z.B. als Feld für "Skype Name:
<input type="text" name="recs[delivery][skype_id]" size="30" id="delivery_skype_id" />

Marker für die Ausgabe: ###DELIVERY_SKYPE_ID### relevant.

Hoffe es hilft jemandem weiter

VG
Alex
< Zurück zum Forum