Integrierte WordPress-Editor bereitet Probleme

  • Hallo,

    leider bereitet TinyMC Probleme, wenn ich in der WYSIWYG-Ansicht Links einfüge und den Beitrag anschließen speichere.
    Anstatt das der Link nachher im Quelltext so aussieht:

    HTML
    <a href="meinlink.html">Name des Links</a>

    sieht er so aus (nicht XHTML-konform!):
    <a href="meinlink.html" mce_href="meinlink.html">Name des Links</a>

    Wie kann ich dieses Problem beheben?

    Im Internet konnte ich leider nur diesen Foren-Beitrag ausfindig machen, der mir aber auch nicht weiterhelfen kann.

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Mmmh, sehr komisch. Aber das der WYSIWYG Müll macht ist ja nix neues... :evil: Entweder befolgst du den Tipp aus deinem Link oben (das Attribut schadet ja nix und sollte vom Browser einfach ignoriert werden - gibt halt ne unschöne Warnung im Validator) oder du schaltest den WYSIWYG aus und nimmst den einfachen Editor. Mehr kann ich dazu auch nicht sagen. :-?

  • Wenn es nach mir ginge, würde ich schon längst mit dem CODE-Editor arbeiten.
    Der WYSIWYG-Editor muss aber auch funktionieren, da noch weitere Benutzer in meinem WordPress-System angemeldet sind, die kein XHTML und CSS können.

  • Mmmh... das Problem kenn ich. Eine Möglichkeit gibts noch: Schreib dir n Plugin, was den Content bei der Ausgabe filtert, also das Attribut rausschmeißt. Weißt du wie das geht, oder soll ich dir mal n Beispiel posten?

  • Habe selbst noch nie ein Plugin geschrieben und wüsste jetzt auch nicht, wie ich das auf die Schnelle angehen könnte.

    Wäre super, wenn du ein Beispiel für mich posten könntest.
    Auch für die anderen User, die mit dem gleichen Problem zu kämpfen haben wie ich...

  • Ich habs jetzt nicht getestet, aber so in der Art müsste es funktionieren. Der Hook "content_save_pre" heißt, dass die Aktion unmittelbar vorm dem Abspeichern des Beitrags in die Datenbank ausgeführt wird.

    Den Code einfach als neues Plugin abspeichern (z.B. marx_clean_up_content.php) und aktivieren. Die Kommentare im Kopf sind wichtig, nicht löschen! WordPress verwendet die für die Anzeige der Plugininformationen in der Pluginliste. Der Code ist nur ein Beispiel, darfst du natürlich gern weiter ausbauen. ;-)

    Die Plugin-API von WordPress ist im Codex recht ordentlich erklärt.

  • Vielen Dank für deine Hilfe.

    Leider erscheint nach Installation des Plugins folgender Fehler:

    Warning: Cannot modify header information - headers already sent by (output started at /xxx/yyy/zzz/web/wp-content/plugins/tinymc_cleanup.php:18) in /xxx/yyy/zzz/web/wp-includes/pluggable.php on line 341

  • Wenn man da oben alles markiert und dann in eine Datei einfügt, stehen vor dem <?php drei und nach dem ?> noch ein Leerzeichen. Frage mich, wo die herkommen.

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

  • Ingo, du hast recht. Die müssen natürlich vorm Speichern des Plugins weg.

    Ich vermute mal, die Zeichen kommen von der Forenfunktion zum Hervorheben der PHP-Befehle. minstyle: Ich hab dir wirklich nicht da hin gemacht, um dich zu ärgern! Sorry! :mrgreen:

  • Das Problem war das Leerzeichen nach dem

    HTML
    ?>

    :)

    Habe das Plugin nun installiert und einen Beitrag mit einigen Links im Content erstellt und mit dem WYSIWYG-Editor abgespeichert. Das Plugin scheint aber nicht zu greifen, da weiterhin alle Links mit

    HTML
    mce_href=

    abgespeichert werden...

    Woran könnte das liegen?

  • Also der Regex sollte korrekt funktionieren... sehr merkwürdig das ganze... probier mal statt 'content_save_pre' einfach nur 'the_content'. Das filtert dann nicht beim Speichern in die Datenbank sondern erst bei der Ausgabe auf der HTML-Seite. (Das ist natürlich nur ein Beheben des Symptoms, nicht des Problems an sich... :?)

    Ansonsten kann natürlich auch immer ein Plugin querschießen, was sich in irgendeiner Art in den Editor oder den Content einklinkt.

  • Also der Regex sollte korrekt funktionieren... sehr merkwürdig das ganze... probier mal statt 'content_save_pre' einfach nur 'the_content'. Das filtert dann nicht beim Speichern in die Datenbank sondern erst bei der Ausgabe auf der HTML-Seite.

    Nun funktioniert es!
    Vielen Dank.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!