====== Wordpress Metabox (klassisch) für Post erstellen ======
Um eine einfache Metabox bei der Beitragsbearbeitenseiten (Post Edit Screen) einzufügen, kann folgender Code genutzt werden.
HTML Ausgabe der Metabox
Mein lustiges HTML";
}
public static function save()
{
// Nichts machen bei Auto-Save
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
return $post_id;
}
// Sanitizen von Eingaben
//$mydata = sanitize_text_field( $_POST['myplugin_new_field'] );
// Update von einem Metafeld
//update_post_meta( $post_id, '_my_meta_value_key', $mydata );
}
}
===== Erweitertes Beispiel mit statischer Klasse =====
In diesem Beispiel ist alles etwas konkreter. Es zeigt wie Daten aus einer Textarea gespeichert und geladen werden.
Mit dieser Variante, kann man auf die gespeicherten Daten der Metabox auch direkt über die statische Methode zurück greifen, via:
''$metabox_value_description = AdditionalPostInfos::get_description()''
This will be displayed above the title on the blog post page.
HTML;
}
public static function save( $post_id )
{
// Nichts machen bei Auto-Save
if( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
// Nichts tun, wenn gar kein Meta mit geschickt wurde
if( !isset( $_POST['additional_post_infos'] ) ) return;
update_post_meta( $post_id, 'additional_post_infos', $_POST['additional_post_infos'] );
}
public static function get_description():string
{
global $post;
$post_meta_description = get_post_meta( $post->ID, 'additional_post_infos',true )['description'] ?? '';
return $post_meta_description;
}
}