Intereting Posts
Форма контактного формуляра 7 работает над локальной установкой wordpress, но сбой на рабочем сервере Пользовательская структура константы для пользовательского типа сообщения Какой запрос отправляет WordPress при обновлении темы? Как передать переменные с помощью get_template_part? Создайте пользователя с ролью автора, но не введите регистрационную информацию Мета-боксы в форме отправки переднего конца не может получить ошибки Как изменить возможности страницы меню Многоузловая установка, объединяющая поддомены и подкаталоги Что мне делать? Многоуровневый, один веб-сайт или множество веб-сайтов? Удаление сообщения из результатов запроса WP добавление текстового сообщения рядом с кнопкой отправки комментариев Папка сайта установки WordPress перемещается в конечный пункт назначения сайта Добавить поле «Подтверждение пароля» на странице wp-login.php Password Reset Предварительный просмотр страницы / публикации без перезаписи текущего содержимого

Как показать все значения meta_key после filtr ими в панели редактирования (admin)

Вот связанные базы данных:

post_type = car post_type = engine 

У одного автомобиля может быть 1 или больше двигателей. Теперь подумайте, как добавить фильтр в админ-зону, который будет фильтроваться в двигателе автомобилями. Например, у меня есть 4 сообщения с двигателями, что сообщения пересылаются с автомобилями, например:

 Engine 01 is assigned to car1 Engine 02 is assigned to car1 Engine 03 is assigned to car2 Engine 04 is assigned to car3 

Поэтому, когда я буду фильтровать Engine 01 post car1 а car2 будет показывать – это правильно .

Но проблема в том, что в моем списке фильтров у меня будет только 1 вызов для записи Engine 01 а остальные двигатели пропали.

Вот мой код:

 add_action('restrict_manage_posts', 'innp_adminfiltes'); function innp_adminfiltes() { //Add filter by market in post type: markets if($post_type == "engine") { $engine_filter_args = array( 'post_type' => 'car', 'meta_key' => 'engine_assigned_car', 'order' => 'ASC', 'orderby' => 'engine_assigned_car' 'posts_per_page' => -1, 'relation' => 'AND', array( 'post_type' => 'engine', 'meta_key' => 'title', 'type' => 'string' ), ); $query_brieg = new WP_Query($engine_filter_args); //only add filter to post type you want ?> <select name="ADMIN_FILTER_FIELD_VALUE"> <option value=""><?php _e('All markets ', 'ADMIN_FILTER_FIELD_VALUE'); ?></option> <?php foreach($query_brieg->posts as $post) { $engine_ID = (int)get_post_meta($post->ID, 'engine_assigned_car', true); //echo "<option value=\"$post->ID\">$post->post_name</option>"; if ($_GET['ADMIN_FILTER_FIELD_VALUE'] == $engine_ID) { $selected = 'selected'; } else { $selected = ''; } echo '<option value="' . $engine_ID . '" '.$selected.'>' . get_the_title($engine_ID) . '</option>'; } ?> </select> <?php } wp_reset_postdata(); } 

И вот запрос:

 add_filter( 'parse_query', 'wpse45436_posts_filter' ); function wpse45436_posts_filter( $query ){ global $pagenow; global $post; global $query2; $query2 = $query; if ( 'events' == $post->post_type && isset($_GET['ADMIN_FILTER_FIELD_VALUE']) && $_GET['ADMIN_FILTER_FIELD_VALUE'] != '') { $query->query_vars['meta_key'] = 'events_assigned_market'; $query->query_vars['meta_value'] = $_GET['ADMIN_FILTER_FIELD_VALUE']; } wp_reset_postdata(); } 

Есть идеи?