Hallo,
in vielen Texten sind nicht nachvollziehbarerweise vereinzelt geschützte Leerzeichen zu finden, die später sowohl bei der Ausgabe in der Extension Topcontent als auch im Backend bei der Ansicher des Seiteninhalts angezeigt werden.
Nachdem der Text nicht aus Word kopiert wurde sondern im RTE eingetippt, verwundert mich das etwas, weil es auch nicht bei jedem eingegebenen Text vorkommt.
Hat jemand eine Idee, wie ich das unterbinden kann? Die Installation läuft unter 3.5. Bei einem anderen Projekt, das ich unter 3.6.1 laufen habe, tritt dieser Fehler trotz sehr ähnlicher Konfiguration nicht auf.
Grüße,
Jürgen
Ich zerre das Thema nochmal nach oben - habe das Problem leider noch nicht lösen können. Die Ausgabe könnte man durch eine htmlspecialchars-Einstellung ja evtl. unterdrücken, aber das Grundproblem, dass geschützte Leerzeichen in der DB stehen, wo eigentlich keine hin sollten, nervt mich dennoch.
Das Problem hab ich, wenn auch 3 Jahre später, auch. Gibts da ne Lösung. Ich hab haufenweise NBSPs in meinen Texten o.O
harp schrieb
Das Problem hab ich, wenn auch 3 Jahre später, auch. Gibts da ne Lösung. Ich hab haufenweise NBSPs in meinen Texten o.O
Hallo,
wir haben das Problem so gelöst, dass wir den Ausgabeteil der entsprechenden Datei (pi1/class.tx_gsttopcontent_pi1.php) manipuliert haben. Dort findet sich ab Zeile 334 ein Anweisungsblock, der die Ausgabe steuert. Wir haben ab dieser Stelle einfach die verwendeten Variablenwerte geparst.
Hier der Codeschnipsel:
---
// Get teasertext of the content.
if(strlen($row['teaserfield']) > 0) {
$teasertext = $row['teaserfield'];
$teasertext = str_replace("Backspace"," ",$teasertext);
$teasertext = str_replace("Ampersand"," ",$teasertext);
} else {
if($this->config['useTeaserAndBodytext']) {
$teasertext = $row['bodytext'];
$teasertext = str_replace("Backspace"," ",$teasertext);
$teasertext = str_replace("Ampersand"," ",$teasertext);
} // end if
---
Achtung: In diesem Codeschnipsel müssen die störenden Zeichen durch die tatsächlichen Codierungen ersetzt werden. Das können wir an dieser Stelle aber nicht tun, weil sie in diesem Forum auch ersetzt würden! Deshalb haben wir hier die HTML- Bezeichnungen 'Backspace' und 'Ampersand' verwendet.
Viel Spaß damit
Wolfgang