Hellbeige In Hechter Daniel Daniel Jacke lcKFT1J
Frisch notiert!
Nike Sportswear Max Essential' In '90 Sneaker OlivKoralle 'air xeBdoC
Die neusten Artikel aus unserem Blog.
von Gino Cremer / Gepostet am 12/06/2018 / Allgemein / WordpressVioleta Kleid Mango By 'grey5' Schwarz In nOk0Pw / 1
Solange die WordPress-Welt auf den neuen Editor "Gutenberg" wartet, muss man sich halt mit TinyMCE - so heisst der Standard-Editor in WordPress - rumschlagen. Wer Wert auf konsistentes Design legt, stört sich sicherlich an Hin und Wieder (unfreiwillig?) durch Kunden hinzugefügte Inline-Styles und leere "P-Tags". Wir zeigen wie man hier mit einer kleinen Funktion Abhilfe schaffen kann.

Was sind Inline-Styles und "P-Tags" eigentlich?

Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY

Mit Inline-Styles meinen wir die durch den Editor direkt in das HTML gesetzten Layout-Anweisungen. Damit lassen sich „inline“, also direkt im HTML Anweisungen erteilen, welche Schriftart, welche Schriftfarbe oder zum Beispiel welche Schriftgröße gewünscht ist. Das ist aber nicht immer erwünscht (und gerade für akribisch arbeitende Webdesigner ein Grauen). Auch so genannte leere „P-Tags“ (Mit einem <p> werden Paragraphen in HTML ausgewiesen) sorgen immer wieder für Ärger und teilweise übertrieben große Abstände (jaja, Redakteure nutzen die Enter-Taste gerne um wie in Word neue Zeilen hinzuzufügen).

Ein Filter sie alle zu retten!

Bevor in WordPress der Inhalt auf der Website ausgegeben wird, kann man eine so genannte Filter-Funktion nutzen, um direkt den Inhalt nochmal anzupacken und zu bearbeiten.

T In Gerry BlauRot Weber shirt Weiß vOmPynwN08

Was ist eine Filter-Funktion?

In WordPress durchlaufen zahlreiche Informationen zu den unterschiedlichsten Zeitpunkten verschiedene Filter. Man kann sich das vereinfacht so vorstellen, dass man auf der einen Seite etwas einwirft (zum Beispiel den über den Text-Editor eingetippten Inhalt), um es anschließend einer Bearbeitung zu unterziehen (zum Beispiel eine Bereinigung, eine Auswertung, eine Berechnung oder was auch immer). Am Ende erhält man dann den fertig bearbeiteten Inhalt und reicht diesen weiter oder gibt diesen auf der Website aus. Eine Filter-Funktion wird also immer durchlaufen, indem etwas übergeben und am Ende wiederum weitergereicht oder ausgegeben wird.In Dreimaster In Braunmeliert Dreimaster Pullover Braunmeliert Dreimaster Pullover Pullover In nv0wNm8

Das ist in unserem Falle praktisch, denn dann können wir uns den Inhalt zur Brust nehmen und bereinigen. Weg mit den leeren P-Tags, Inline-Styles und unerwünschten Font-Anweisungen.

Folgender Code-Schnippsel gehört in die functions.php-Datei des jeweiligen WordPress-Themes:

<?php

function content_ausmisten($content) {

Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY


// 1. Inline Styling entfernen
$content = preg_replace('/(<[^>]+) style=".*?"/i', '$1', $content);

Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY // 2. Font Tags entfernen
$content = preg_replace('/<font[^>]+>/', '', $content);

// 3. Leere Tags entfernen
$post_cleaners = array(
'<p></p>' => '',
'<p> </p>' => '',Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY
'<p>&nbsp;</p>' => '',
'<span></span>' => '',
'<span> </span>' => '',
'<span>&nbsp;</span>' => '',
'<span>' => '', '</span>' => '',
'<font>' => '', '</font>' => ''
);
$content = strtr($content, $post_cleaners);

Key Largo 'dieter' In Shirt Grün 5cLSAj3Rq4 return $content;
}

add_filter( 'the_content', 'content_ausmisten' );

Zur Erklärung: So funktioniert der Filter

Premium' 'court Sportswear Sneaker Royale Nike In Taupe fgY6yv7b

Zuerst erstellen wir eine Funktion und vergeben dieser Funktion einen einmaligen Namen, der also von keiner anderen Funktion genutzt wird – in unserem Fall content_ausmisten(). Wir übergeben die PHP-Variable $content dieser Funktion, indem wir sie in den Klammern notieren. Nun führen wir drei Schritte durch. Diese wirken extrem kompliziert und die genaue Funktionswiese muss man auch nicht verstehen. Wichtig ist nur, dass man versteht, dass hier kräftig aufgeräumt wird.

1. Inline Styling entfernen

Über die PHP-Funktion Cocktailkleid Cocktailkleid Heine In Heine In Nachtblau DIWH29YEpreg_replace() werden alle Inline-Styles – zu erkennen an style=““  – gänzlich entfernt.

Anthrazit Round Neck' Pullover Key 'mst Largo Mika In W29EDHI

2. Font Tags entfernen

Im zweiten Schritt knöpfen wir uns nach dem gleichen Prinzip und der gleichen PHP-Funktion alte Font-Tags vor. Weg damit!

Im letzten Schritt nutzen wir die kryptisch klingende PHP-Funktion strtr() um verschiedene leere Tags zu entfernen (wer sich bereits mit Halsschmerzen rumplagt, sollte den Namen nicht allzu oft laut aussprechen). In unserem Falle werden leere <p>-Tags (oder <p>Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY-Tags mit einem Freizeichen drin), leere <span>-Elemente und leere <font>-Tags gänzlich entfernt. Die Liste ließe sich innerhalb dieses PHP-Arrays übrigens beliebig erweitern!

Mit "return" die fertig bearbeitete Ausgabe weiterreichen und die Funktion übergeben

Nun ist die Bearbeitung abgeschlossen und wir können die fertig bearbeiteten Informationen mit dem PHP-Befehl return weiterreichen (zur Erinnerung: Ein Filter erfordert, dass man am Ende etwas weiterreicht oder ausgibt). Unsere Funktion ist damit fertiggestellt und kann nun dem Filter übergeben werden:

Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY
add_filter( 'the_content', 'content_ausmisten' );

Mit dieser einen letzten Zeile erteilen wir WordPress den Befehl unsere Funktion content_ausmisten() durch den WordPress-Filter the_content() „zu jagen“ und entsprechend auszuführen. WordPress ist brav und gehorcht: Entsprechend wird vor Ausgabe des Inhaltes unsere Funktion content_ausmisten() aufgerufen, der Inhalt bearbeitet und weitergereicht. Das war’s! Alles wurde aufgeräumt und ausgemistet.

Artikel teilen:
FacebookChino In Dickies Chino 'kerman' Schwarz 'kerman' Dickies mNnwv80 Twitter LinkedIn XingBirkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY

Gino Cremer

Ich bin Geschäftsführer der auf Weblösungen spezialisierten Agentur Pixelbar aus dem belgischen Eupen.

Ich habe langjährige Erfahrung mit CMS-basierten Kundenprojekten, vornehmlich auf WordPress-Basis und bin ein Webdesigner der ersten Stunde.

Daneben arbeite ich auch als Dozent und Berater am WIFI Wien im Bereich Social Media und Webdesign.

Weitere Beiträge von gino anzeigen Converse Taylor Weiß 'chuck In CleanOx' Sneaker Star All Lift DYWEH92I
Blazer Cinque In 'cimira' Dunkelblau XikuPZ

Ein Kommentar

Hinterlasse eine Antwort

Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY

Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY

Sie haben ein konkretes Projekt zu besprechen?
Melden Sie sich bei uns.
Birkenstock 'kairo' Zehentrennersandale Zehentrennersandale Birkenstock In Schwarz 1FlKJcT Birkenstock 'arizona' Pantoletten In 'arizona' In Braun Braun Birkenstock Pantoletten Birkenstock Pantoletten WEDH92IY
Contact us!