Intereting Posts
WordPress: отображение пользовательского поля дважды Контроль версий с командой разработчиков Ответ WP Codex неполный? Поместите WP в подкаталог. .htaccess требуется изменение Отзывчивый дизайн темы: как показывать слайд-шоу на настольных компьютерах и планшетах и ​​статические фотографии на мобильных устройствах с использованием одного и того же шаблона? Как обновить плагины WordPress до последней версии с помощью SVN Бесконечная проблема с тегами Страница расписания в меню Постоянная ссылка для таксономии и пользовательского типа сообщения Когда использовать Исключения против Объектов Ошибок против простого ложного / нулевого Установка разной ширины и высоты для гравитатора Странное поведение с добавлением _ {$ meta_type} _metadata | Фильтр add_post_metadata Как регулярно создавать резервные копии и обновлять веб-сайт WordPress с большим количеством изображений? Добавление / загрузка Googlebot в конце моих URL-адресов Показывать все сообщения на одной странице? Штрих-код функции – Установить параметр

условная логика для редактирования пользовательских полей переднего плана

Я только начинаю изучать php / js и хотел бы получить некоторые рекомендации по наилучшему способу настройки моей логики: Цель – отображение значения в пользовательском метафоне в настраиваемом типе сообщений. Если пользователь является автором страницы, отобразите кнопку редактирования, которая откроет поле ввода. Этот вход должен позволить пользователю (автору) обновить настраиваемое поле (метабокс) от внешнего интерфейса.

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

<?php /* check if POST 'leadcandidate' has no value and set var $nersi by custom field in database, or by POST if it has a positive value */ if(empty($_POST['leadcandidate'])){ $nersi = ($meta_values[_dtm_lead_candidate][0]); } else { $nersi = $_POST['leadcandidate']; } /* check if user is author of custom post type */ global $current_user; get_currentuserinfo(); if (is_user_logged_in() && $current_user->ID == $post->post_author) { echo '<button id=btn3>Edit me</button>'; /* input field will be hidden and revealed on button click with JS */ /* add $nersi as vlue of input so user starts from seeing what current value of field is */ echo '<form method="post" action=""><input type="text" name="leadcandidate" value="' . $nersi . '"><input type="submit"></form>'; } /* this updates the database that stores the metafield */ update_post_meta(get_the_ID(), '_dtm_lead_candidate', $_POST['leadcandidate']); ?> /* display the value of metafield (to everyone) */ <h3 id="leadc"><?php echo 'Lead Candidate:' . $nersi; ?></h3> 

Solutions Collecting From Web of "условная логика для редактирования пользовательских полей переднего плана"