Intereting Posts
Как удалить фид комментариев из WP 3.1.1? Предотвращать уведомления и предупреждения в error_reporting? Разрешить пользователям использовать WP Customizer, но отключить кнопку сохранения Значок пользовательской таксономии, чтобы изменить текст, отображаемый в Внешний вид> Меню Есть ли способ получить почтовые поля, используя `transition_post_status` У вас есть один набор «канонических» категорий, разделяемых всеми блогами? Как создать поле, только если поле meta сообщения имеет определенное значение? Вывод сообщений, игнорирующий Sort_Column? get_query_var () и permalinks Автоматическая категория для пользовательского типа сообщения пытаясь показать отдельную запись, но отображает все сообщения в настраиваемом типе сообщений Нет доступа к глобальным переменным? ob_get_clean возвращает пустую строку, ob_get_flush выводит строку Как добавить фильтр в wp_list_categories (), чтобы сделать ссылки nofollow? Удалить ссылку боковой панели администратора

Сохранить значение по умолчанию для пустых или отсутствующих сообщений

Я использую WordPress, и я использую настраиваемое поле, которое имеет имя ecpt_carprice для каждого опубликованного мной сообщения, поле сохраняется в wp_postmeta же, как и прикрепленное изображение:

Некоторые мои машины (сообщения) не имеют мета-ключа ecpt_carprice .
Можете ли вы предоставить мне какие-либо средства (WordPress / PHP или SQL-запрос) для хранения для каждого сообщения без мета-записи новой записи со значением 0?

У меня есть этот код, но я не знаю, как его использовать

 if ( has_term( '', 'car_brand' )) { //check if the meta field has a value $meta_values = get_post_meta($post->ID, 'ecpt_carprice', true); if(empty($meta_values)){ //add a default value add_post_meta($post->ID, 'ecpt_carprice', '0'); } 

}

Solutions Collecting From Web of "Сохранить значение по умолчанию для пустых или отсутствующих сообщений"

Если вы хотите и только нужно делать то, что предложили @tf, то только для того, чтобы заботиться о отображении 0, если нет значения, вы можете построить функцию, чтобы сделать это следующим образом:

 function wpse121165_return_carprice() { $ecpt_carprice = get_post_meta($post->ID, 'ecpt_carprice', true); if(! empty( $ecpt_carprice ) ){ return $ecpt_carprice; } else { return 0; } } 

Используйте echo wpse121165_return_carprice(); функцию: echo wpse121165_return_carprice();

Если вам действительно нужно обновить свою базу данных, вам нужно сделать это по-другому. Ниже код должен дать вам представление о том, как это сделать:

  function wpse121165_update_carprice_meta() { // args to query for your key $args = array( 'post_type' => 'your_post_type', 'meta_query' => array( 'relation' => 'OR', array( 'key' => 'ecpt_carprice', 'value' => 'bogus', // you have to pass a value 'compare' => 'NOT EXISTS' ), array( 'key' => 'ecpt_carprice', 'value' => '' ) ), 'fields' => 'ids' ); // perform the query to get back an array of ids $not_exist_or_empty_ids = new WP_Query( $args ); foreach ( $not_exist_or_empty_ids as $id ) { update_post_meta($id, 'ecpt_carprice', '0'); } } 

Используйте wpse121165_update_carprice_meta(); функцию: wpse121165_update_carprice_meta(); , Если вы разместите это в файле functions.php и выполните свое мета-обновление в базе данных, обязательно отключите его и не переименуйте его снова и снова.