' . all_in_one_invite_codes_md5() . '', 'all_in_one_invite_codes_render_metabox', 'tk_invite_codes', 'normal', 'default' ); } add_action( 'add_meta_boxes', 'all_in_one_invite_codes_create_metabox' ); /** * Create the code default values */ function all_in_one_invite_codes_options_defaults() { $all_in_one_invite_codes_general = get_option( 'all_in_one_invite_codes_general' ); return array( 'email' => '', 'generate_codes' => isset( $all_in_one_invite_codes_general['generate_codes_amount'] ) ? $all_in_one_invite_codes_general['generate_codes_amount'] : '', ); } /** * Render the metabox and display the options */ function all_in_one_invite_codes_render_metabox() { global $post; // Get or generate the invite code $all_in_one_invite_code = all_in_one_invite_codes_md5( $post->ID ); // Get the invite code options $all_in_one_invite_codes_options = get_post_meta( $post->ID, 'all_in_one_invite_codes_options', true ); // Get the default values $all_in_one_invite_codes_options_defaults = all_in_one_invite_codes_options_defaults(); // Merge the options so we have the default take care of the missing values. $all_in_one_invite_codes_options = wp_parse_args( $all_in_one_invite_codes_options, $all_in_one_invite_codes_options_defaults ); $email = isset( $all_in_one_invite_codes_options['email'] ) ? $all_in_one_invite_codes_options['email'] : ''; $generate_codes = isset( $all_in_one_invite_codes_options['generate_codes'] ) ? $all_in_one_invite_codes_options['generate_codes'] : ''; $type = isset( $all_in_one_invite_codes_options['type'] ) ? $all_in_one_invite_codes_options['type'] : 'registration'; ?>

eMail:

Number:

Purpose:

$post->ID, 'posts_per_page' => - 1, 'post_type' => 'tk_invite_codes', //you can use also 'any' ); $the_query = new WP_Query( $args ); if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); echo '' . get_post_meta( get_the_ID(), 'tk_all_in_one_invite_code', true ) . ''; echo '
'; endwhile; endif; wp_reset_postdata(); // add the nonce check wp_nonce_field( 'all_in_one_invite_codes_options_nonce', 'all_in_one_invite_codes_options_process' ); } /** * Save the options */ function all_in_one_invite_codes_save_options( $post_id, $post ) { if ( ! isset( $_POST['all_in_one_invite_codes_options_process'] ) ) { return $post_id; } if ( ! wp_verify_nonce( $_POST['all_in_one_invite_codes_options_process'], 'all_in_one_invite_codes_options_nonce' ) ) { return $post_id; } if ( ! current_user_can( 'edit_post', $post_id ) ) { return $post_id; } if ( ! isset( $_POST['all_in_one_invite_codes_options'] ) ) { return $post_id; } // Set up an empty array $sanitized = array(); // Sanitize with wp_filter_post_kses foreach ( $_POST['all_in_one_invite_codes_options'] as $key => $detail ) { $sanitized[ $key ] = wp_filter_post_kses( $detail ); } // Do the update update_post_meta( $post_id, 'all_in_one_invite_codes_options', $sanitized ); } add_action( 'save_post', 'all_in_one_invite_codes_save_options', 1, 2 ); /** * Save the invite code */ function all_in_one_invite_codes_save_code( $post_id, $post ) { if ( ! isset( $_POST['all_in_one_invite_codes_options_process'] ) ) { return $post_id; } if ( ! wp_verify_nonce( $_POST['all_in_one_invite_codes_options_process'], 'all_in_one_invite_codes_options_nonce' ) ) { return $post_id; } if ( ! current_user_can( 'edit_post', $post_id ) ) { return $post_id; } if ( ! isset( $_POST['tk_all_in_one_invite_code'] ) ) { return $post_id; } $tk_all_in_one_invite_code = get_post_meta( $post_id, 'tk_all_in_one_invite_code', true ); if ( $tk_all_in_one_invite_code ) { return $post_id; } $tk_invite_code = sanitize_key( trim( $_POST['tk_all_in_one_invite_code'] ) ); update_post_meta( $post_id, 'tk_all_in_one_invite_code', $tk_invite_code ); } add_action( 'save_post', 'all_in_one_invite_codes_save_code', 1, 2 ); /** * Remove slugdiv */ function all_in_one_invite_codes_remove_slugdiv() { remove_meta_box( 'slugdiv', 'tk_invite_codes', 'normal' ); } add_action( 'admin_menu', 'all_in_one_invite_codes_remove_slugdiv' );