Intereting Posts
WP_Query, пользовательский сортировка и настраиваемый фильтр Динамическая фильтрация сообщений с пользовательскими таксономиями Как я могу сделать многоуровневое меню в теме WordPress с помощью бутстрапа Плагин календаря событий для курсов, показывающих полный год Woocommerce – Конкретный шаблон для категории продукта? Как добавить настраиваемый фильтр в functions.php Полиланг и Объединенные Арабские Эмираты Расширенные пользовательские поля – эффективность запросов wordpress $ wpdb работает только один раз Отображение нескольких URL-адресов на одной странице Ответ Strange 403 заголовка Попытка получить пользовательские js-файлы в заголовке admin Как создать персонализированный листинг сообщений в админ? Удаление пробелов из сценариев для уменьшения времени загрузки страницы Установить идентификатор пользователя во время wp_create_user

Сохранение нуля в мета-окне

Поэтому я создал мета-поле для оценки рейтинга. Иногда значение рейтинга (из 5) равно нулю.

Когда вы вводите 0 во вход и сохраняете данные, он не обрабатывается из-за того факта, что 0 также означает false в инструкции:

if ($meta_value) ... 

Мне было интересно, знает ли кто-нибудь способ сохранить нулевое значение?

Единственный ответ, который я нашел, – это ввести 0x0, а затем преобразовать его (согласно: https://wordpress.stackexchange.com/a/96536/17411 ), но для пользователей это кажется запутанной задачей для объяснения, а затем для их помнить ..


Это моя save_meta:

 function save_custom_meta($post_id) { global $meta_review_fields_1; // Verify nonce if (!wp_verify_nonce($_POST['custom_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; } // Loop and save: Review foreach ($meta_review_fields_1 as $field_1) { $old_1 = get_post_meta($post_id, $field_1['id'], true); $new_1 = $_POST[$field_1['id']]; if ($new_1 && $new_1 != $old_1) { update_post_meta($post_id, $field_1['id'], $new_1); } elseif ('' == $new_1 && $old_1) { delete_post_meta($post_id, $field_1['id'], $old_1); } } 

Имейте в виду, мне нужно, чтобы он удалял содержимое других полей, если он пуст, просто введите рейтинг, который должен иметь значение 0.

Solutions Collecting From Web of "Сохранение нуля в мета-окне"