@Slovolov

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

Доброго дня!

Не выводятся данные при сортировке по произвольному полю. Пробовал уже по всякому.

Записи выводятся в таблицы, коих три штуки. В каждой таблице и пытаюсь отсортировать:

add_action('wp_ajax_filter_my_models', 'filter_my_models');
add_action('wp_ajax_nopriv_filter_my_models', 'filter_my_models');
function filter_my_models()
{
    check_ajax_referer('custom-shacman-ajax-nonce', 'nonce');

    $taxonomy = $_POST['taxonomy'];

    $args = array(
        'post_type' => 'models',
        'post_status' => 'publish',
        'posts_per_page' => -1,
        'orderby' => 'meta_value', /* сортировка по произвольному полю */
		'meta_key' => 'year_made', /* имя самого поля */
        'order' => 'DESC', /*  */
        'fields' => 'ids',
        'tax_query' => array(
            'relation' => 'AND',
        )
    );

    foreach ($taxonomy as $term => $term_id) {
        $tax_query = array(
            'taxonomy' => $term,
            'field' => 'term_id',
            'terms' => $term_id,
        );
        $args['tax_query'][] = $tax_query;
    }

    $query = new WP_Query($args);

    $models = sorted_posts_models_by_auto_type($query->posts);

    /**
     * Render html
     */
    $html = '';

    foreach ($models as $term_name => $post_ids) {
        $html .= '<div class="col-md-12">';
        $html .= '<div class="subTitleWrap"><h3>' . $term_name . '</h3></div>';
        $html .= '</div><!-- col-md-12 -->';

        $html .= '<div class="col-md-12"><div class="tableWrap">';
        $html .= '<table class="table-1"><thead>';

        $html .= '<tr>
                  <th>№ модели,' . $term_name . '</th>
				  <th>Фото</th>
                  <th>Год выпуска</th>
                  <th>Кабина</th>
                  <th>Колесная формула</th>
                  <th>Двигатель</th>
                  <th>Характеристики</th>
                  <th>Кол-во</th>
                  <th>Цена в наличии</th>
                  <th>Цена под заказ</th>
                  </tr>
                  </thead>
                  <tbody>';

        foreach ($post_ids as $post_id) {

            $year_made_names = get_all_stats_if_have_more($post_id, 'year_made');
            $cabin_type_names = get_all_stats_if_have_more($post_id, 'cabin_type');
            $wheel_formula_names = get_all_stats_if_have_more($post_id, 'wheel_formula');

            $html .= '<tr>
                      <td data-th="№ модели, ' . $term_name . ' ">
                         <a href="' . get_the_permalink($post_id) . '" class="title">' . get_field('product_model', $post_id) . '</a>
					  </td>
					  <td data-th="Фото">
						<a href="' . get_the_permalink($post_id) . '" class="imgWrap">
                           ' . wp_get_attachment_image(get_field('product_prewiev', $post_id)) . '
                         </a>
						</td>
                      <td data-th="Год выпуска"><span>' . $year_made_names . '</span></td>
                      <td data-th="Кабина"><span>' . $cabin_type_names . '</span></td>
                      <td data-th="Колесная формула"><span>' . $wheel_formula_names . '</span></td>
                      <td data-th="Двигатель"><span>' . get_field('product_engine', $post_id) . '</span></td>
                      <td data-th="Характеристики"><span>' . get_field('product_characters', $post_id) . '</span></td>
                      <td data-th="Кол-во"><span>' . get_field('product_count_in_stock', $post_id) . ' шт</span></td>
                      <td data-th="Цена в наличии"><span>' . get_field('product_price', $post_id) . ' руб.</span></td>
                      <td data-th="Цена под заказ"><span>$' . get_field('product_price_order', $post_id) . '</span></td>
                      </tr>';

        }

        $html .= '</tbody></table><a id="close"></a>
<table id="header-fixed"></table>';
        $html .= '</div></div><!-- col-md-12 -->';

     }
  • Вопрос задан
  • 68 просмотров
Пригласить эксперта
Ответы на вопрос 1
rOOse
@rOOse
Frontend developer
Не выводятся или неправильно сортируются? Если не выводятся, то работает ли если убираешь сортировку по полю?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы