Intereting Posts
Подарочная коробка WooCommerce Как я могу показать 1 признанный пост в стилизованном элементе, а следующие несколько ниже по-разному Url переписать, добавить правило, перенаправить запрос POST? Различные результаты между константой и поиском запроса var ACF против таксономий WooCommerce: прямая регистрация Страница Сколько требуется обслуживание сервера WordPress? Изменить постоянную ссылку типа персонализированного сообщения Можно ли восстановить признанные изображения после экспорта / импорта WordPress Как настроить перенаправления для категорий с разбивкой по страницам после добавления / category / to permalink Создание «форума» – показ последнего сообщения или последнего комментария Отключить автоматический URL-адрес WordPress URL и миниатюра WordPress «Следующее сообщение» Плагин – создать страницу без ее появления в боковом меню Жестко-кодирование короткого кода в качестве последнего элемента меню в первичной навигации?

Новый флажок в пользовательском типе сообщений не сохраняет данные

Я создал настраиваемый тип сообщения, чтобы добавить отзывы клиентов. Однако поле histdesig (историческое обозначение), флажок, не обновляется, когда я его проверяю. Код для создания CPT ниже.

Я изменил его от типа «текст» к типу «checkbox», потому что на полпути я понял, что у меня будет только одно историческое обозначение. Прежде чем изменять его, я вытер данные из этого поля. Тем не менее, я подозреваю, что что-то происходит с mysql. Это возможно? Что я должен сделать, чтобы исправить это?

function create_posttype() { $args = array( 'labels' => array( 'name' => __('Testimonials'), 'singular_name' => __('Testimonials'), 'all_items' => __('All Testimonials'), 'add_new_item' => __('Add New Testimonial'), 'edit_item' => __('Edit Testimonial'), 'view_item' => __('View Testimonial') ), 'public' => true, 'has_archive' => true, 'rewrite' => array('slug' => 'testimonials'), 'show_ui' => true, 'show_in_menu' => true, 'show_in_nav_menus' => true, 'capability_type' => 'page', 'supports' => array('title', 'editor', 'thumbnail'), 'exclude_from_search' => true, 'menu_position' => 80, 'has_archive' => true, 'menu_icon' => 'dashicons-format-status' ); register_post_type('testimonials', $args); } add_action( 'init', 'create_posttype'); function my_add_meta_box(){ add_meta_box( 'testimonial-details', 'Testimonial Details', 'my_testimonials_cb', 'testimonials', 'normal', 'default'); } function my_testimonials_cb($post){ $values = get_post_custom( $post->ID ); $client_name = isset( $values['client_name'] ) ? esc_attr( $values['client_name'][0] ) : ""; $neighborhood = isset( $values['neighborhood'] ) ? esc_attr( $values['neighborhood'][0] ) : ""; $jobtype = isset( $values['jobtype'] ) ? esc_attr( $values['jobtype'][0] ) : ""; $builtin = isset( $values['builtin'] ) ? esc_attr( $values['builtin'][0] ) : ""; $architect = isset( $values['architect'] ) ? esc_attr( $values['architect'][0] ) : ""; $histdesig = isset( $values['histdesig'] ) ? esc_attr( $values['histdesig'][0] ) : ""; wp_nonce_field( 'testimonial_details_nonce_action', 'testimonial_details_nonce' ); $html = ''; $html .= '<label>Client Name</label>'; $html .= '<input type="text" name="client_name" id="client_name" style="margin-top:15px; margin-left:9px; margin-bottom:10px;" value="'. $client_name .'" /><br/>'; $html .= '<label>Neighborhood</label>'; $html .= '<input type="text" name="neighborhood" id="neighborhood" style="margin-left:25px; margin-bottom:15px;" value="'. $neighborhood .'" /><br/>'; $html .= '<label>Job type</label>'; $html .= '<input type="text" name="jobtype" id="jobtype" style="margin-left:25px; margin-bottom:15px;" value="'. $jobtype .'" /><br/>'; $html .= '<label>Built in</label>'; $html .= '<input type="text" name="builtin" id="builtin" style="margin-left:25px; margin-bottom:15px;" value="'. $builtin .'" /><br/>'; $html .= '<label>Architect</label>'; $html .= '<input type="text" name="architect" id="architect" style="margin-left:25px; margin-bottom:15px;" value="'. $architect .'" /><br/>'; $html .= '<label>Historic Designation</label>'; $html .= '<input type="checkbox" name="histdesig" id="histdesig" style="margin-left:25px; margin-bottom:15px;" value="'. $histdesig .'" />'; echo $html; } function my_save_meta_box($post_id){ // Bail if we're doing an auto save if( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return; // if our nonce isn't there, or we can't verify it, bail if( !isset( $_POST['testimonial_details_nonce'] ) || !wp_verify_nonce( $_POST['testimonial_details_nonce'], 'testimonial_details_nonce_action' ) ) return; // if our current user can't edit this post, bail if( !current_user_can( 'edit_post' ) ) return; if(isset( $_POST['client_name'] ) ) update_post_meta( $post_id, 'client_name', $_POST['client_name']); if(isset( $_POST['neighborhood'] ) ) update_post_meta( $post_id, 'neighborhood', $_POST['neighborhood']); if(isset( $_POST['jobtype'] ) ) update_post_meta( $post_id, 'jobtype', $_POST['jobtype']); if(isset( $_POST['builtin'] ) ) update_post_meta( $post_id, 'builtin', $_POST['builtin']); if(isset( $_POST['architect'] ) ) update_post_meta( $post_id, 'architect', $_POST['architect']); if(isset( $_POST['histdesig'] ) ) update_post_meta( $post_id, 'histdesig', $_POST['histdesig']); } add_action( 'add_meta_boxes', 'my_add_meta_box' ); add_action( 'save_post', 'my_save_meta_box' );