Intereting Posts
Как разместить баннерное объявление между пост 1 и пост 2 только на домашней странице как сделать автоматическую ссылку на основе ключевого слова по заголовку в сообщении? Панель управления администратора с пользовательской вкладкой для клиента Каков правильный способ обновления плагина через черепаху svn в репозиторий? не удалось перевести архив post_type Как настроить дополнительную ссылку Домашняя страница перенаправления (www.sitename.com) до последней записи Как проверить, существует ли админ (под) меню? Создать весь WordPress в качестве репозитория github? WordPress Ajax не функционирует так, как я ожидаю … что случилось? Создание многоязычной темы путем добавления пользовательской таксономии к сообщениям и страницам под названием «Языки»? Оптимальная настройка для многоязычного WordPress с Woocommerce Пользовательские типы сообщений, пользовательские таксономии и постоянные ссылки? Как получить get_term_children в алфавитном порядке? Как скрыть W3 Total Cache от не админов?

Пользовательское поле по умолчанию со счетчиком

У меня есть пользовательский тип сообщения, называемый машиной, и настраиваемое поле «reference_number», которое я хочу, это добавить значение по умолчанию в настраиваемое поле при создании новой машины и показать это значение перед сохранением.

Вот что я придумал до сих пор.

function set_default_meta($post_ID){ $current_field_value = get_post_meta($post_ID,'reference_number',true); // this needs to be like, machine 1, machine 2, .. $default_meta = 'machine '; if ($current_field_value == '' && !wp_is_post_revision($post_ID)){ add_post_meta($post_ID,'reference_number',$default_meta,true); } return $post_ID; } add_action('wp_insert_post','set_default_meta'); 

Код работает и добавляет значение «машина» в настраиваемое поле, но только после сохранения сообщения. как я могу показать его, только когда начинаю добавлять сообщение. и как добавить переменную счетчика, увеличивающуюся на единицу в каждом новом сообщении.

благодаря

РЕДАКТИРОВАТЬ

Большое спасибо @s_ha_dum за код, я также задал вопрос на форуме Pods, и они многое помогли с глобальной переменной. Таким образом, окончательный код

1- добавить глобальную переменную как значение по умолчанию в pods admin

  {@globals.reference_number} 

2- добавьте этот код в functions.php

 // Set reference number to be dynamicaly increased every time machine created. function get_next_reference_number() { global $wpdb; $ref = $wpdb->get_var("SELECT max(cast(meta_value as unsigned)) FROM wp_postmeta WHERE meta_key='reference_number'"); $GLOBALS[ 'reference_number' ] = (!empty($ref)) ? $ref + 1 : 1; } add_action('wp_insert_post','get_next_reference_number'); 

И это работает.

Solutions Collecting From Web of "Пользовательское поле по умолчанию со счетчиком"

Я не знаю, как работает инфраструктура pods, поэтому я не могу сказать вам, как установить значение, но я могу начать.

Во-первых, не сохраняйте всю строку «machine %n ». Часть «машина» будет одинаковой для всех записей, правильно? Затем просто сохраните « %n ».

Теперь, когда вам нужно добавить новое сообщение …

 function get_next_reference_number() { global $wpdb; $ref = $wpdb->get_var("SELECT MAX(meta_value) FROM {$wpdb->postmeta} WHERE meta_key = 'reference_number'"); return (!empty($ref)) ? $ref + 1 : 1; } 

Надеюсь, вы сможете работать в коде Pods.