Bedingte Trennstriche ­ in der Navigation werden in Klartext ausgegeben.

  • Die Branche eines Kunden bringt sehr lange Begriffe mit sich, die wir in der Navigation mit bedingten Trennstrichen (soft hyphens) ­ trennen. Bisher wurden die nicht angezeigt, mit Update auf Version 9.3.1 sind sie aber plötzlich überall auf der Website zu sehen – siehe Screenshot.

    Wir nutzen im Navigationsmodul beide Felder "Name" und "Darstellung", letztere eben mit den eingebauten ­. Warum werden diese HTML-Entities nicht mehr verarbeitet, sondern als Klartext ausgegeben?

    Wir sind derzeit am Bugfixing der Kundenwebsite für Version 9 und können noch nicht auf wE 10 gehen. Vielleicht werden die ­ ja in einer höheren Version wieder korrekt verarbeitet?

  • Hey,

    Ich habe mal schnell in der Versionshistorie gesucht und bei den Änderungen von wE 9.1.2 folgendes gefunden:

    Quote
    • Navigation
      • Tag <we:navigationField>: Bei der Ausgabe des Feldes "Darstellung" wird nun auf die Tags <i> und <span> geprüft. Sind sie vorhanden, werden keine HTML-Entities ersetzt: Dadurch ist es nun "offiziell" möglich hier Icons (z.B. Fontawesome) zu verwenden. Anderer HTML-Kode kann jedoch nicht mehr verwendet werden (#13625)

    Ich könnte mir vorstellen, dass das Verhalten damit zusammenhängt.

    In der Bugbase habe ich dann noch Ticket #13828 zu wE 9.1.3 gefunden. Dort wurde als Workaround für Tags folgendes angeführt: <span><br/></span>. Ev. klappt es ja, wenn du die ganzen Begriffe in spans setzt, z.B: <span>Unfall&shy;versicherung</span>.

    Alternativ kannst du auch versuchen das Soft-Hyphen direkt einzufügen (als Zeichen, nicht als Entity). Das hat halt den Nachteil, dass man es nicht sieht und auch nicht sichtbar machen kann.

    Ich schlage vor, du trägst das in der Bugbase ein. Meiner Meinung nach sollte die Navigation schon mit &shy; umgehen können.

    Liebe Grüße,
    Sascha

  • Für die Navi ist ein Textfeld vorgesehen. Daher wird hier HTML maskiert.

    Wenn du in das Feld "Fragen & Antworten" eingibst, kann man von den Autoren nicht verlangen das sie "Fragen &amp; Antworten" eingeben - genauso "Fragen -> Antworten" müßte ja dann als "Fragen -&gt; Antworten" eingetragen werden. Das kann ja kein Redakteur machen.

  • Das stimmt nur teilweise. Man kann viele Zeichen direkt oder als Entity angeben. Der Browser stellt das dann trotzdem richtig dar.

    Wenn ich mir <we:var /> anschaue, dann haben wir dort das Attribut htmlspecialchars="true|false". Ev. wäre das auch eine Idee für <we:navigationField  />. Damit könnte man das in den Templates selbst beeinflussen.

    Wenn es nur um das &shy; geht, könnte man natürlich noch andere Möglichkeiten in Betracht ziehen:

    • Sonderbehandlung/-erlaubnis
    • spezieller Platzhalter


    Chefpraktikant Du kannst noch probieren <we:navigationField /> in eine Variable zu übergeben und dann mit <we:var htmlspecialchars="true" /> ausgeben. Wenn das funktioniert, ein mMn schönerer Workaround.


    Just my 2 cents,
    Sascha

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!