Was ist das esc_html_e () ich WordPress PHP?

10

Warum verwenden Entwickler

<?php esc_html_e() >?

Was bedeutet es auf 404 Seiten, wie funktioniert es?

TheDose
quelle

Antworten:

13

Es ist eine Kombination aus _e(), die eine übersetzbare Zeichenfolge esc_html()wiedergibt und zur Ausgabe von Text dient, damit der Text nicht als HTML interpretiert wird.

Sie würden es verwenden, um zu verhindern, dass HTML in eine Übersetzung geschmuggelt wird und Ihr Markup beschädigt wird oder Sicherheitsprobleme verursacht.

Zum Beispiel, wenn Ihr Thema Folgendes hätte:

_e( 'My translatable string', 'my-text-domain' );

Dann ist es möglich, dass eine Übersetzung 'My translatable string'so etwas wie ist '<script>alert('Bad!');</script>'. Wenn Sie nicht verwenden esc_html_e(), wird dieses Skript ausgeführt. Wenn Sie verwenden esc_html_e(), wird dies nicht der Fall sein, da die <& >-Zeichen als &lt;& maskiert werden &gt;, die als <und> ausgegeben und nicht als HTML-Tags interpretiert werden.

Jacob Peattie
quelle
1
Alles oben Gesagte ist richtig. Ich möchte ein paar Links hinzufügen, damit Sie sich weiterbilden können (Google und vor allem der Codex sind übrigens Ihre Freunde): Dies ist eine gute Lektüre zur Bereinigung von Daten: codex.wordpress .org /… Dies ist der andere Teil des Themas, Übersetzungen (das gesamte
Themenhandbuch