esc_url( admin_url( 'images/wpspin_light.gif' ) ), 'data' => get_option( 'content_template_data' ), 'nonce' => wp_create_nonce( CONTENT_TEMPLATE_NONCE ), 'l10n' => array( 'name' => __( 'Template Name', 'content-template' ), 'add' => __( 'Add New Template', 'content-template' ), 'select' => __( 'Select a Template', 'content-template' ), 'insert' => __( 'Insert', 'content-template' ), 'update' => __( 'Update', 'content-template' ), 'updateConfirm' => __( 'Update Template?', 'content-template' ), 'delete' => __( 'Delete', 'content-template' ), 'deleteConfirm' => __( 'Delete Template?', 'content-template' ), 'cancel' => __( 'Cancel', 'content-template' ), 'nameRequired' => __( 'Template name is required.', 'content-template' ), 'nameDuplicated' => __( 'Template name is duplicated.', 'content-template' ), ) ) ); } add_action( 'wp_ajax_content_template', 'content_template_do_ajax' ); function content_template_do_ajax() { check_ajax_referer( CONTENT_TEMPLATE_NONCE, 'nonce' ); $state = $_POST['state']; $name = stripslashes( $_POST['name'] ); $data = get_option( 'content_template_data' ); if ( in_array( $state, array( 'add', 'update' ) ) ) { $data[$name]['title'] = stripslashes( $_POST['title'] ); $data[$name]['content'] = stripslashes( $_POST['content'] ); $data[$name]['excerpt'] = stripslashes( $_POST['excerpt'] ); $data[$name]['categories'] = isset( $_POST['categories'] ) ? $_POST['categories'] : array(); $data[$name]['tags'] = stripslashes( $_POST['tags'] ); } elseif ( $state === 'delete' ) { unset( $data[$name] ); } update_option( 'content_template_data', $data ); die(); } function content_template_add_meta_boxes() { add_meta_box( 'content-template', __( 'Content Template', 'content-template' ), 'content_template_render_meta_box', 'post', 'side', 'high' ); } function content_template_render_meta_box() { ?>