Typo3-RTE: Zeichen statt Wörter zählen

Im redaktionellen Umfeld ist für die Redakteure die Zahl der Zeichen wichtiger als die Zahl der Wörter.
Leider bietet der RTE von Typo3 die Anzeige der Zeichen im Text nicht an.
Als schnelle, sicher nicht saubere, Lösung kann man direkt die updateWordCount-Funktion in der htmlarea.js-Datei ändern/anpassen:

    updateWordCount: function() {
        var charCount = 0;
        if (this.getEditor().getMode() == 'wysiwyg') {
                // Get the html content
            var text = this.getEditor().getHTML();
            if (!Ext.isEmpty(text)) {
                // Jeden Absatz mitzählen
                text = text.replace(/<p>/g,'X');
                // alle anderen Tags ausblenden
                text = text.replace(HTMLArea.RE_htmlTag, '');
                // Leerzeichen mitzählen
                text = text.replace(/ /g, 'L');
                // alle anderen Leerzeichen nicht mitzählen
                text = text.replace(/\s/g, '');
                text = text.replace(/&nbsp;|&#160;/gi, '');
                charCount = text.length;
            }
        }
            // Update the word count of the status bar
        this.statusBarWordCount.dom.innerHTML = charCount ? ( charCount + ' Zeichen') : '&nbsp;';
    },

Diese direkte Änderung ist nicht der saubere Weg, da er beim Update des Plugins überschrieben wird. Auf die Schnelle war es aber nun mal die schnelle Lösung.

Gruß
Ralf

2 Antworten auf „Typo3-RTE: Zeichen statt Wörter zählen“

  1. Ein interessanter Ansatz, nachdem ich mich auch vor einiger Zeit mit diesem Thema beschäftigt habe. Nur der Sinn der Zeile
    text = text.replace(//g,’X‘);
    ist mir ehrlich gesagt nicht ganz klar…

    1. Die < p >-Tags ersetze ich, damit jeder Paragraph (also Absatz) auch einmal mitgezählt wird.
      Das muss man jetzt sicher nicht zwingend so machen, aber wenn ich es nicht mache, dann kommt bei
      < p >1< /p >< p >2< /p >
      nur zwei Zeichen herum. Man könnte das allerdings auch als vier Zeichen interpretieren und daher zähle ich die Absätze einmal mit. Gleiches könnte man auch noch mit anderen absatzbildenden Elementen (< li >, …) machen.
      Allerdings halte ich das auch nicht für so wahnsinnig spielentscheidend, es geht ja lediglich darum, dem Redakteur einen Anhaltspunkt für die Länge seines Textes zu geben.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.