Wie kann ich diese Metabox-function in meiner Vorlage verwenden? (WordPress)

das ist meine function:

$prefix = 'dbt_'; $meta_box = array( 'id' => 'my-meta-box', 'title' => 'Custom meta box', 'page' => 'post', 'context' => 'normal', 'priority' => 'high', 'fields' => array( array( 'name' => 'Checkbox', 'id' => $prefix . 'checkbox', 'type' => 'checkbox' ) ) ); add_action('admin_menu', 'mytheme_add_box'); // Add meta box function mytheme_add_box() { global $meta_box; add_meta_box($meta_box['id'], $meta_box['title'], 'mytheme_show_box', $meta_box['page'], $meta_box['context'], $meta_box['priority']); } // Callback function to show fields in meta box function mytheme_show_box() { global $meta_box, $post; // Use nonce for verification echo ''; echo ''; foreach ($meta_box['fields'] as $field) { // get current post meta data $meta = get_post_meta($post->ID, $field['id'], true); echo '', '', ''; } echo '
'; switch ($field['type']) { case 'checkbox': echo ''; break; } echo '', '
'; } add_action('save_post', 'mytheme_save_data'); // Save data from meta box function mytheme_save_data($post_id) { global $meta_box; // verify nonce if (!wp_verify_nonce($_POST['mytheme_meta_box_nonce'], basename(__FILE__))) { return $post_id; } // check autosave if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return $post_id; } // check permissions if ('page' == $_POST['post_type']) { if (!current_user_can('edit_page', $post_id)) { return $post_id; } } elseif (!current_user_can('edit_post', $post_id)) { return $post_id; } foreach ($meta_box['fields'] as $field) { $old = get_post_meta($post_id, $field['id'], true); $new = $_POST[$field['id']]; if ($new && $new != $old) { update_post_meta($post_id, $field['id'], $new); } elseif ('' == $new && $old) { delete_post_meta($post_id, $field['id'], $old); } } }

Ich versuche, diesen Code in meiner Vorlage zu verwenden, wenn das Kontrollkästchen aktiviert ist:

 ID, "checkbox", true) ) : ?> Show this when checkbox checked  

Und es funktioniert nicht

Solutions Collecting From Web of "Wie kann ich diese Metabox-function in meiner Vorlage verwenden? (WordPress)"

Ihr fehlt das Präfix:

$prefix.'checkbox' Sie sicher, dass Sie nach Ihrer Abfrage das global $prefix aufrufen und verwenden Sie $prefix.'checkbox' zu Ihrem get_post_meta

 < ?php if ($meta_box = get_post_meta($post->ID, $prefix.'checkbox', true) ) : ?> Show this when checkbox checked < ?php endif; ?> 

Sie vergessen, das Präfix zu verwenden, wenn Sie die gesendeten Daten aus dem $ _POST-Array in mytheme_save_data () lesen.