Intereting Posts
Как я могу переключить календарный календарь в поле ввода месяца? Как обработать обратный вызов «WP_Customize_Cropped_Image_Control»? Как скрыть значения таксономии Duplicate в WordPress? Как добавить встроенный CSS для каждого изображения? Петля для пользовательских типов сообщений, отфильтрованных по таксономии Я не понимаю, почему я использую lostpassword_url hook? Как настроить встроенное меню в WordPress? Как пройти много идентификаторов в post__in? Регистрация сайта и координация MailChimp? Запрос на пользовательский счет поля? расширенные формы поиска с 3 входными текстами и что основная проблема 3 входной текст Какой метод проверки подлинности WP-API следует использовать для взаимодействия с анонимными / незарегистрированными посетителями? Расширенные пользовательские поля – эффективность запросов Связанные страницы из плагина на передней панели не видят $ wpdb одна и та же функция get_posts работает по-разному в tag.php и functions.php

Добавить термин для пользовательской таксономии с передней стороны

У меня возникают проблемы с созданием персонализированного сообщения с таксономиями с использованием формы на лицевой стороне.

Я попытался добавить несколько строк кода и использовать «tax_input», но всегда получаю ошибки.

Тип персонализированного сообщения: pet а таксономии – это pet-category pet-city . Этот код работает нормально, но он публикует только заголовок и контент.

Пожалуйста, если кто-нибудь скажет мне, что мне нужно добавить, чтобы также опубликовать эти две таксономии, которые будут оценены. но я пробовал и пробовал без успеха,

 <?php /* Template Name: Insert Posts */ $postTitleError = ''; if(isset($_POST['submitted']) && isset($_POST['post_nonce_field']) && wp_verify_nonce($_POST['post_nonce_field'], 'post_nonce')) { $postTitle = trim($_POST['postTitle']); $new_post = array( 'post_title' => wp_strip_all_tags( $_POST['postTitle'] ), 'post_content' => $_POST['postContent'], 'post_type' => 'pet', 'post_status' => 'publish' ); $post_id = wp_insert_post($new_post,$wperror); if($post_id) { // Update Custom Meta update_post_meta($post_id, 'vsip_custom_one', esc_attr(strip_tags($_POST['customMetaOne']))); update_post_meta($post_id, 'vsip_custom_two', esc_attr(strip_tags($_POST['customMetaTwo']))); // Redirect wp_redirect( home_url() ); exit; } } ?> <?php get_header(); ?> <!-- #primary BEGIN --> <div id="primary"> <form action="" id="primaryPostForm" method="POST"> <!-- Post Title --> <fieldset> <label for="postTitle"><?php _e('Post\'s Title:', 'framework') ?></label> <input type="text" name="postTitle" id="postTitle" value="<?php if(isset($_POST['postTitle'])) echo $_POST['postTitle'];?>" class="required" /> </fieldset> <?php if($postTitleError != '') { ?> <span class="error"><?php echo $postTitleError; ?></span> <div class="clearfix"></div> <?php } ?> <!-- Post Content --> <fieldset> <label for="postContent"><?php _e('Post\'s Content:', 'framework') ?></label> <textarea name="postContent" id="postContent" rows="8" cols="30"><?php if(isset($_POST['description'])) { if(function_exists('stripslashes')) { echo stripslashes($_POST['description']); } else { echo $_POST['description']; } } ?></textarea> </fieldset> <!-- Pet Category --> <li> <label for="pet-category">Categoria: *</label> <select name="pet_category" id="pet_category" tabindex="9" class="required"> <option value=""></option> <?php $categories = get_terms('pet-category', array('hide_empty' => 0)); foreach ($categories as $category) { echo "<option id='pet_category' value='$category->slug'>$category->name</option>"; } ?> </select> </li> <!-- Pet City --> <li> <label for="pet-city">City: *</label> <select name="pet_city" id="pet_city" tabindex="9" class="required"> <option value=""></option> <?php $cities = get_terms('pet-city', array('hide_empty' => 0)); foreach ($cities as $city) { echo "<option id='pet_city' value='$city->slug'>$city->name</option>"; } ?> </select> </li> <!-- Pet Image --> <fieldset name="site-image" class="site-image"> <input type="file" name="image" class="file_input_hidden site-image file_upload" onchange="javascript: document.getElementById('fileName').value = this.value;" /> <br />Al menos de 200 de ancho x 200 de alto </fieldset> <!-- Post Validation of Content and Submit Button --> <fieldset> <?php wp_nonce_field('post_nonce', 'post_nonce_field'); ?> <input type="hidden" name="submitted" id="submitted" value="true" /> <button type="submit"><?php _e('Add Post', 'framework') ?></button> </fieldset> </form> </div><!-- #content --> </div><!-- #primary --> <?php get_sidebar(); ?> <?php get_footer(); ?> 

Solutions Collecting From Web of "Добавить термин для пользовательской таксономии с передней стороны"

Ваш код не назначает условия для сообщения. Вы можете сделать это с помощью wp_set_post_terms (), который:

Установите условия для сообщения.

Пример упрощенного использования:

 $pet_cat_ term = $_POST['pet_category']; wp_set_post_terms( $post_id, $pet_cat_ term, 'pet-category' ); 

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