Wordpress verändert eigenes DIV-Attribut

Aktuell arbeiten wir noch im Hintergrund an der Foren-Struktur, daher kann es vorkommen das noch nicht alles zu 100% passt. Sowohl die Foren-Bereiche, Labels, Berechtigungen, Icons und das verschieben der Themen in die entsprechende Bereiche wird noch alles durchgeführt, sobald das abgeschlossen ist entfernen wir diesen Hinweis auch.
  • Ich nutze Wordpress 5.0.3 mit Gutenberg.

    Hallo,

    ich muss aus technischen Gründen ein div um ein nicht typisches Html Attribut erweitern.
    Das Attribut hat keinen Wert.
    Wenn ich also im Wordpress Admin einen Html Block anlege, also so:
    <div class="hallo" specialAttribut></div>
    ... dann macht mir Wordpress daraus:
    <div class="hallo" specialAttribut=""></div>

    Wie kann ich das verhindern?

    • 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

    Wenn du Fragen hast, kannst du dich gerne jederzeit an @Maximilian Rupp wenden

    Hinweis: folgt noch

  • Handelt es sich immer um den gleichen DIV und um das gleiche Attribut? Dann könntest Du Dir einen eigenen Shortcode basteln. Oder du nutzt den Filter the_content und veränderst so den Inhalt (Stichwort str_replace). Oder du setzt das Attribut mittels jQuery für diese Class.

    Wofür benötigst du das Attribut? Dann könnte man besser helfen.

    Das Geheimnis des Könnens liegt im Wollen!
    [size=12]Bitte keine Hilfegesuche per PN (auch keine "privaten" Links). Das ist ein öffentliches Forum.[/SIZE]

  • Über das div werden per Javascript, Shopkomponenten geladen.
    Im Moment brauche ich das nur an einer Stelle, aber man weiß ja nie;)

    Das mit dem Filter klappt nur bedingt:

    Wenn ich das so schreibe, funktioniert das:

    Code
    function replace_content( $content ) {
       $content = str_replace('specialAttribut', 'specialAttributTEST', $content );
       return $content;
    }
    add_filter( 'the_content', 'replace_content', 9999 );

    Aber sobald ich z.B. das Gleichzeichen "=" weg haben will, macht die Funktion nix, auch nicht wenn ich den Backslash weg lasse:

    Code
    function replace_content( $content ) {
       $content = str_replace('specialAttribut\=', 'specialAttribut', $content );
       return $content;
    }
    add_filter( 'the_content', 'replace_content', 9999 );
  • Ich dachte eher daran, dass du im Content nach <div class="hallo"> suchst und mit <div class="hallo" specialAttribut> ersetzt.

    Code
    function replace_content( $content ) {
       $content = str_replace('<div class="hallo">', '<div class="hallo" specialAttribut>', $content );
       return $content;
    }
    add_filter( 'the_content', 'replace_content', 9999 );


    Ist ungetestet.

    Das Geheimnis des Könnens liegt im Wollen!
    [size=12]Bitte keine Hilfegesuche per PN (auch keine "privaten" Links). Das ist ein öffentliches Forum.[/SIZE]

  • Oh shit, das hat die ganze Zeit schon funktioniert.
    Nur der Firefox Inspector hat mir diese ="" am Ende angezeigt, im Quelltext passt das....
    Also genau so wie du das geschrieben hast!!!!
    Vielen Dank für Deine Hilfe und Deine Zeit!!!

Participate now!

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