Franz Holzinger

autor  
9-03-17 08:04:19 NEUE FRAGE
Harald S.
Hallo,

bei der Anlage eines Produktes gibt es die Möglichkeit, eine Beschreibung über das RTE anzufertigen. Dies erfolgt wie bei einer Textverarbeitung.

Ich benötige für einige Produkte die Möglichkeit, in diesen Beschreibungstext besondere Eingabefelder (INPUT-Felder) per HTML (?) einzubinden. Beispiel: Wenn ein Kunde eine E_Mail-Adresse bestellt, sollte er bei diesem Produkt auch direkt dazugehörig ein E-Mail-Muster als Wunsch eingeben können.

Wie kann ich diese Aufgabe lösen?

Der Shop wird aufgebaut unter Typo3 7.6.16 mit tt_products 2.8.14

Viele Grüße
H. S.
9-03-17 08:42:07 Ausgabe des Feldes Note beim Produkt
Franz Holzinger
Das Feld 'note' (Bemerkung) kann über TypoScript für jedes Plugin der Listen- oder Einzelansicht angepasst werden. Z.B. zum Abschneiden eines langen Textes:

plugin.tt_products {
conf.tt_products.LIST {
field {
note = TEXT
note.cropHTML = {$plugin.tt_products.max_note_length} | ...
}
}
}

Alternativ kann da auch eine userFunc eines cObject stehen. Damit könnte eine Funktion in einer externen Extension aufgerufen werden, welche Marker des Note Feldes selbständig durch beliebiges HTML ersetzt. Es muss nur obiges Setup angepasst werden.

plugin.tt_products {
conf.tt_products.LIST {
field {
note = USER_INT
note.userFunc = Your\NameSpace\YourClass->replaceMarkers
}
}
}

9-03-17 10:04:19 Danke
Harald S.
für die schnelle Antwort. Ich habe es probiert, (Cash gelöscht, Browser neu gestartet,...) aber das Feld 'note' stellt sich nicht um. Eingaben werden weiter nur über den RTE-Editor akzeptiert. Wahrscheinlich übersehe ich etwas oder mache etwas falsch.
9-03-17 11:47:22 Geht irgendwie nicht!
Harald S.
Trotz aller Versuche: Jeder HTML-CODE, der sich nicht mit Textformatierungen befasst, fliegt beim Abspeichern raus.
10-03-17 13:08:24 Description
Franz Holzinger
Im Description Feld (Beschreibung) kann ich den Marker
###MARKER1### eintragen.
In der HTML Ansicht des RTE erhalte ich das:

<p>###MARKER1###</p>

Das Programm zur Ersetzung des Markers könnte dann ev. die '<p>' und '</p>' um den Marker herum entfernen.
11-03-17 11:16:00 TSConfig
Franz Holzinger
Man kann im Page TS-Config RTE Einstellungen vornehmen.

entryHTMLparser_db ... Damit wird das Verhalten des HTML Parsers eingestellt.
13-03-17 08:20:17 Einen kleinen Schritt weiter
Harald S.
Hallo,
also, alleine im TSConfig die RTE-Einstellungen zu verändern wollte nicht so recht funktionieren. Das Problem bei mir war, dass jetzt zwar input-tags akzeptiert werden, sie aber immer in einen p-tag eingefasst werden und der Quellcode als Text angezeigt wird.
Daraufhin habe ich mir ein kleines Template gebaut, dass ich direkt meiner Detailansicht-Seite zugewiesen habe.

Constants:
content.RTE_compliant = 0

Setup:
tt_content.stdWrap.dataWrap >
lib.parseFunc_RTE.nonTypoTagStdWrap.encapsLines>

Das sieht jetzt schon ganz gut aus, jedenfalls sind die lästigen p-tags verschwunden.

Der HTML-Befehl wird aber noch immer wie ein Text angezeigt, weil die Winkel-Zeichen '<' und '>' als HTML-Sonderzeichen übernommen werden.

13-03-17 14:38:51 Letztes Problem
Harald S.
Hallo,
wie beschrieben, werden die Winkel-Zeichen '<' und '>' für die Tags in '&lt;' bzw. '/&lt;' umgewandelt. Könnte ich das verhindern, wäre dies eine perfekte Lösung. Ich habe viele Möglichkeiten im Seiten-TS für den RTE und über Template-TS ausgetestet (Beispiel: 'lib.stdheader.10.setCurrent.htmlSpecialChars = 0' im Template) , die aber leider nicht weiter helfen.
Ich habe mich dann Fluid zugewandt und in der Beschreibung gefunden, dass der Standardeintrag <f:format.html> in den <f:format.raw> umgewandelt werden sollte. Stimmt das? Und wo finde ich das entrsprechende Fluid Template?




13-03-17 15:44:38 Gelöst!
Harald S.
Im Root-Template als Konstante einfügen


styles.content.links.allowTags = ...., input, ...

... und das war's.

Vielen Dank für die hilfreichen Ideen!!!
< BACK TO FORUM