Verwenden von esc_attr_e

Von dem, was ich verstehe, wird esc_attr_e idealerweise zum esc_attr_e Werten in Attributen verwendet. – Ist es richtig, dass die Verwendung von esc_attr_e auch mit Nicht-Attributwerten wie den h3- und label-Elementen im Beispiel unten esc_attr_e kann?

 

<input name="ng_plugin_menu" id="ng_plugin_menu" type="text" value="" class="regular-text" placeholder="" />

Mit esc_attr_e anstelle von _e wurde mir von einem leitenden Entwickler gesagt, dass dies gültig ist, aber ich suche nach Bestätigung. Es ist auch der Zweck meines Beispielcodes, dass ich die Übersetzung für alle Zeichenfolgen zulassen möchte.

Solutions Collecting From Web of "Verwenden von esc_attr_e"

Ich würde vorschlagen, esc_html anstelle von esc_attr dafür zu verwenden, z

  < ?php echo esc_html( $title ); ?>  
< ?php echo wp_kses_post( $html_with_safe_tags );?>

Es gibt auch:

  • esc_html__ esc_attr__ etc (escape Übersetzungen auch!)
  • esc_jsesc_js für Javascript zB console.log(< ?php echo esc_js($var); ?>);
  • esc_url_raw beim Umleiten, benutze dies stattdessen
  • esc_sql
  • esc_textarea
  • sanitize_text_field
  • Whitelisting-Werte
  • Typ Casting mit (int) oder absint
  • und andere

Ja, es ist gültig. as steht in der Referenz https://developer.wordpress.org/reference/functions/esc_attr_e/ Diese function zeigt übersetzten Text an, der zur sicheren Verwendung in einem Attribut maskiert wurde und was für ein Attribut sicher ist, ist sicher in HTML-Text.

Für einfache Strings (wie ‘Plugin Menu Name’) gibt diese function die gleiche Ausgabe zurück, aber wenn Sie können, empfehle ich die Verwendung der entsprechenden function, wie bereits Tom J Nowell aufgelistet.