Advertisement
bamsti

Eigene WP Metabox für Posts

Apr 17th, 2024 (edited)
464
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.40 KB | None | 0 0
  1. <?php // DIESE ZEILE NICHT MIT EINFÜGEN!
  2. /**
  3.  * Benutzerdefiniertes Feld für "Meine Gedanken" zu einem Post.
  4.  */
  5. function benutzerdefiniertes_feld_meine_gedanken_hinzufuegen() {
  6.     add_meta_box(
  7.         'meine_gedanken_meta_box',
  8.         __('Meine Gedanken', 'textdomain'), // Ersetze 'textdomain' durch die Textdomain deines Themes
  9.         'meine_gedanken_meta_box_render',
  10.         'post',
  11.         'normal',
  12.         'high'
  13.     );
  14. }
  15.  
  16. function meine_gedanken_meta_box_render($post) {
  17.     // Holt bereits vorhandene Daten
  18.     $meine_gedanken = get_post_meta($post->ID, 'meine_gedanken', true);
  19.     // HTML für WYSIWYG-Editor
  20.     wp_nonce_field(basename(__FILE__), 'meine_gedanken_meta_box_nonce');
  21.     wp_editor($meine_gedanken, 'meine_gedanken_editor');
  22. }
  23.  
  24. function meine_gedanken_meta_box_speichern($post_id) {
  25.     // Nonce
  26.     if (!isset($_POST['meine_gedanken_meta_box_nonce']) || !wp_verify_nonce($_POST['meine_gedanken_meta_box_nonce'], basename(__FILE__))) {
  27.         return;
  28.     }
  29.  
  30.     // Berechtigungen
  31.     if (!current_user_can('edit_post', $post_id)) {
  32.         return;
  33.     }
  34.  
  35.     // Speichen
  36.     if (isset($_POST['meine_gedanken_editor'])) {
  37.         update_post_meta($post_id, 'meine_gedanken', $_POST['meine_gedanken_editor']);
  38.     }
  39. }
  40. add_action('add_meta_boxes', 'benutzerdefiniertes_feld_meine_gedanken_hinzufuegen');
  41. add_action('save_post', 'meine_gedanken_meta_box_speichern');
  42.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement