Ich habe zwei Felder. Der erste ist für reinen Text (aber mit Sonderzeichen) und der zweite für HTML-Inhalt (wp_editor wird verwendet). Beide werden später für phpmailer benötigt.
wp_editor( $epn_doi_body, 'doi-body', array( 'editor_height' => '300px' ) );
1) Wie sichere ich sie nach dem Absenden des Formulars und speichere sie dann in der database in einer benutzerdefinierten Tabelle, die bereits existiert? (esc_attr, sanitize_text_field …)
2) Und wenn ich den Inhalt von der database in der genauen und ursprünglichen getippten Version ausgeben möchte: Wie mache ich das? (wpautop …)
Ich habe in den letzten Tagen ein paar Dinge ausprobiert. Aber es hat nie so funktioniert, wie ich es brauchte.
Daten : (Array) Zu ersetzende Daten (in Spalte => Wertepaare). Sowohl $ Datenspalten als auch $ Datenwerte sollten “roh” sein (weder sollte SQL maskiert sein).
Etwas wie:
$wpdb->insert( $wpdb->prefix . "myTable", array( "doiBody" => $_POST['doi-body'] ), array( "%s" ) );
esc_attr( $output )
wäre ausreichend, glaube ich. Hoffe das hilft irgendwie.
wp_editor( $epn_doi_body, 'doi-body', array( 'editor_height' => '300px' ) );
Um dasselbe Ergebnis zu erhalten, das in der database gespeichert wurde, muss die Ausgabe geändert werden.
Für das Textfeld:
wp_specialchars_decode( $epn_doi_altbody, $quote_style = ENT_QUOTES )
Für den wp_editor:
wpautop( $epn_doi_body );