WP 2.0 killt Breaks oder setzt sie wo es mag- WP 2.1 auch …

WP 2.0 killt Abstände, wenn man br setzen mag und gibt br hinzu wo es keiner braucht.

Ich habe auf meinem Testblog WP 2.0. Stellte dort eine Tabelle in einen Artikel und hatte auf einmal mitten drunter lauter br / im Quellecode. Außerdem wurde im WordPress.de Forum immer wieder gefragt, wie man es schafft, dass WP2.0 mehrere br untereinander auch anzeigt, wenn man so “Abstand” erzeugen mag.

In der wp-includes/functions-formatting.php wurde ich fündig. Wenn Du auch diese Probleme hast, dann kannst Du meine Lösung gerne ausprobieren.

edit am 24.1.07² auch WP 2.1 hat dieses Problem, die Lösung dafür steht am Ende dieses Artikels.

Lösung für WordPress Version kleines als WP 2.1 also WP 2.00-2.07

1. wp-includes/functions-formatting.php sichern, dann mit einem Editor Deiner Wahl öffnen.
2. br s werden gekillt. Ich kann damit keinen Abstand machen.
3. Zeile 57 ungefähr.

function wpautop($pee, $br = 1) {
    $pee = $pee . "\n"; // just to make things a little easier, pad the end
//    $pee = preg_replace('|<br />\s*<br />|', "\n\n\n", $pee);

Diese beiden Querstriche dorthin machen wo Du sie siehst. Man nennt dies auskommentieren. Auf deutsch unbrauchbar machen.

4. Bei verschiedenen HTML Tags wird ein br gesetzt, obwohl es nicht hingehört.
5. Suche alle Zeilen ab Zeile 67 , die ungefähr so aussehen:

 $pee = preg_replace('!<p>\s*(</?(?:table|thead|tfoot|

Sie haben auf alle Fälle jede Menge HTML Tags und der erste davon ist immer “table”.

Sieh nach, ob der html tag, wo die br ungewollt auftauchen, dort dabei steht.

Wenn nicht ergänze ihn einfach.

Lösung für WP 2.1

Sicher die Datei:wp-includes/formatting.php.
Öffne sie dann und ändere folgendes in der Zeile 55.

function wpautop($pee, $br = 1) {
	$pee = $pee . "\n"; // just to make things a little easier, pad the end
	$pee = preg_replace('|<br />\s*<br />|', "\n\n", $pee);
	// Space things out a little
	$allblocks = '(?:table|thead|tfoot|caption|colgroup|tbody|tr|td|th|d......................

bei ‘allblocks’ stehen jede Menge an html tags drin, fehlt dort einer, dann kommen die breaks. Daher habe ich in dem Fall einfach col ergänzt. Hineingeschrieben und den senkrechten Trennstrich gemacht. Gespeichert, hochgeladen und fertig.

function wpautop($pee, $br = 1) {
	$pee = $pee . "\n"; // just to make things a little easier, pad the end
	$pee = preg_replace('|<br />\s*<br />|', "\n\n", $pee);
	// Space things out a little
	$allblocks = '(?:table|thead|tfoot|caption|colgroup|col|tbody|tr|td|th|d......................

Abspeichern, hochladen und zumindest bei mir waren dann diese Probleme behoben. WENN das Automatische Reparieren von HTML Tags abgestellt ist und man NICHT den Editor verwendet.

…findende Grüße ..;)

²
dieser Artikel wurde am 15.01.06 das erste Mal veröffentlicht.

16 Kommentare zu "WP 2.0 killt Breaks oder setzt sie wo es mag- WP 2.1 auch …"
  1. Ja genau nach sowas habe ich gesucht und auch schon im WP-Forum geschrieben.
    Meine Frage bezieht sich auf deinen letzten Satz.
    Zitat:”WENN das Automatische Reparieren von HTML Tags abgestellt ist und man NICHT den Editor verwendet.”
    Kann man nun nach dem umschreiben des Codes den Html-Editor von WP 2.0, ohne dieses Breakgewirr; wieder benutzen?
    LG

  2. HI
    ich habe es probiert. Extra den Editor wieder in Gang genommen. Was der aus einer XHTML stricten Tabelle gemacht hat, verrate ich lieber nicht ;)

    Die halben Daten hat er auch *gefuttert*,
    ich bin ehrlich – es ist derart frustrierend dieses Ding zu nutzen, dass ich es lieber lassen tät an Deiner Stelle.

    Quicktags geht auch, wenn man die aufmotzt.

    Aber jetzt kann ich wenigst die nutzen, ohne dass mir WP 2.0 das html zerschießt.

    Wenn es so weiter geht, werde ich vielleicht doch noch updaten ;)

    lg

  3. Zitat: “Quicktags geht auch, wenn man die aufmotzt.” Wie geht das aufmotzen? Gibst da irgend eine Beschreibung.
    LG

  4. Oh ja …. klar ;)
    Abkürzungen. Da erklärte ich wie man Quicktags für Abkürzungen erstellt. Aber diese Technik ist ja ausbaubar. Hilft das weiter ?
    WP 2.0 ist die quicktag.js im Ordner wp-includes/js .
    lg

  5. Danke. Danach suche ich schon lange.
    In Kommentaren und Beiträgen nervt das. Selbst mit p margin-bottom blöd zu lösen.

    Ich hoffe, es klappt auch mit dem Editor. Mal sehen.

  6. Hallo Monika,
    ich habe in Wp 2.1 da jetzt mal cite mit reingepackt, da ich blockquote mit cite verwende, für die quellenangabe.
    seit wp 2.1 zickt mein wp damit rum, er packt da ein br und ein p mit rein.
    hoffe, es wirkt.

    übrigens ich muss hier immer meine Daten neu eintragen!?
    Nein mein FF ist richtig eingestellt, es funktioniert ja auch auf anderen Seiten ;-)

  7. Hallo liebe Monika :)
    Ich sag mal ganz lieb Danke für diesen Beitrag :) ich bin schon faast wahnsinnig geworden wegen einem haufen p`s und br’s an stellen wo ich sie nicht haben wollte… vielen vielen dank! :)
    LG, Angi (die jetzt keine Angst mehr haben muss dass der Himmel auf ihren Kopf fällt) ;) *smile*

  8. Huhu!

    Ich nochmal :) trotz aller Veränderungen in der Datei (fieldset, col, label hinzugefügt) klaut mir wordpress bei meinem Ask me Plugin immer noch lauter /p. Das gibt natürlich nen Fehler, denn da muss ja nach dem p auch noch ein /p sein gell. Die betreffende stelle wird per echo ausgegeben. Hast du vll eine Idee? WP version ist 2.1.2.

  9. Ooops Angi
    ich kenne dieses Plugin nicht mal, :(
    so habe ich derzeit keine Idee,
    kann ja auch sein, dass das Plugin die /p killt oder da etwas per *echo* ausgegeben wird, dort die /p einfach fehlen?

    lg

  10. Habe die p und /p ja extra dort eingefügt bei der echo ausgabe. :( Hm, dann werde ich wohl weiter rumprobieren müssen. Trotzdem danke für deine Antwort!

  11. ah!

    dann suche mal im Plugincode selber,
    vielleicht akzeptiert dies kein html bei *echo*
    -alles schon erlebt ;)

    lg

  12. Hmm – und wie finde ich heraus, ob es so ist? Wonach muss ich da suchen? (BIn leider in php noch nicht ganz so bewandert :( )

  13. Hmm Angi

    da kann ich Dir (aufgrund akkuten Zeitmangel) nur das Pluginforum vom wordpress-deutschland.de Forum empfehlen …

    ich schaffe es nicht mir dies anzusehen, oder Dir dies hier zu erklären.. sorry :(

    lg

  14. Okay dann werde ich mal nachher dort einen Beitrag schreiben. :) Danke dir für deine Hilfe!