Intereting Posts
Как распечатать высушенный sql сразу после его выполнения Есть ли способ переопределить «перерывы комментариев на страницы» и «закрыть комментарии для старых сообщений» на определенных должностях, но не на других? Создание страницы параметров темы? Обновление содержимого нескольких страниц / сообщений сразу? Как выполнить запрос по роли пользователя? Список предстоящих событий, упорядоченных по дате в настраиваемом поле Привязка GalleryView для WP Gallery, без NextGen Где phpMyAdmin внутри WordPress? Почему неправильно использовать admin_print_scripts- {hook} для вставки файла сценария (.js)? скрыть что-то на одной странице, если у текущего автора есть только одно сообщение get_results на больших наборах данных Отсутствует кнопка контакта с Jetpack при запуске локально Удаляющие изменения положительно влияют на производительность базы данных? BuddyPress – получить список определенных полей xProfile Показать содержимое только на главной странице?

Могу ли я перечислить пользовательский тип сообщения в другом настраиваемом типе сообщений в области администрирования?

Я надеюсь, кто-то сможет направить меня в правильном направлении. У меня есть пользовательский тип сообщения, называемый «местоположениями». У меня есть другой пользовательский тип сообщения, называемый «отзывы».

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

Я нигде не мог найти ничего подобного.

Любая помощь приветствуется!

Solutions Collecting From Web of "Могу ли я перечислить пользовательский тип сообщения в другом настраиваемом типе сообщений в области администрирования?"

Да, ты можешь.

Вам нужно будет добавить настраиваемое поле, в котором будет храниться идентификатор другого типа сообщения. Я бы рекомендовал использовать список выбора.

Вы можете попробовать что-то в этом направлении:

add_action( 'add_meta_boxes', 'wpse_143600_add_box' ); add_action( 'save_post', '143600_save_box' ); //create the metabox function wpse_143600_add_box() { add_meta_box( 'related_testimonial', __( 'Testimonails', 'wpse_143600_translation' ), 'wpse_143600_testimonial_box', 'locations', 'normal' ); } //build the box function wpse_143600_testimonial_box($post) { wp_nonce_field( basename( __FILE__ ), 'wpse_143600_nonce' ); $wpse_143600_stored_meta = get_post_meta( $post->ID ); $testimonialArgs = array( 'post_type' => 'testimonials', 'post_status' => 'publish', 'numberposts' => -1 ); $testimonials = get_posts($testimonialArgs); if($testimonials): ?> <p> <label for="meta-select" class="wpse_143600-row-title"><?php _e( 'Example Select Input', 'wpse_143600_translation' )?></label> <select name="meta-select" id="meta-select"> <option value="NULL">Please choose a testimonial…</option> <?php foreach($testimonials as $testimonial): ?> <option value="<?php echo $testimonial->ID; ?>" <?php if ( isset ( $wpse_143600_stored_meta['meta-select'] ) ) selected( $wpse_143600_stored_meta['meta-select'][0], $testimonial->ID ); ?>><?php echo $testimonial->post_title; ?></option> <?php endforeach; ?> </select> </p> <?php else: ?> <p>There are no testimonials - please save this post, and write some testimonials. You'll then be able to choose a testimonial for this location.</p> <?php endif; } //save the box function wpse_143600_save_box( $post_id ) { $is_autosave = wp_is_post_autosave( $post_id ); $is_revision = wp_is_post_revision( $post_id ); $is_valid_nonce = ( isset( $_POST[ 'wpse_143600_nonce' ] ) && wp_verify_nonce( $_POST[ 'wpse_143600_nonce' ], basename( __FILE__ ) ) ) ? 'true' : 'false'; // Exits script depending on save status if ( $is_autosave || $is_revision || !$is_valid_nonce ) { return; } // Checks for input and saves if needed if( isset( $_POST[ 'meta-select' ] ) ) { update_post_meta( $post_id, 'meta-select', $_POST[ 'meta-select' ] ); } } 

Это довольно грубый код, но вы должны закрыть вас.

Извините за длину, вы можете найти ее на pastebin: http://pastebin.com/zA4aDiV9

Вы можете использовать плагин post 2 post scribu. Он делает именно то, что вы хотите, и является самым продвинутым плагином для этой цели.