• DONATE to NULLED!
    Вы можете помочь Форуму и команде, поддержать финансово.
    starwanderer - модератор этого раздела будет Вам благодарен!

Помощь Сортировка по значению в произвольном поле

SPY-FeinD

Полезный
Регистрация
19 Июл 2008
Сообщения
224
Реакции
16
Добрый день, такой вопрос на сайте к записям через Advanced Custom Fields указал "количество" можно ли как-нибудь сортировать от меньшего к большему в категории? Т.е. нажимаем сортировать от меньшего к большему сначала записи вылазят в которых указано меньшее количество шт. и по возрастанию пошли вниз. и наоборот
 
PHP:
$query = new WP_Query( array(
    'post_type' => 'auto',
    'meta_key' => 'price',
    'orderby' => 'meta_value_num',
    'order' => 'ASC',
) );
Где
post_type - тип записи;
meta_value - сортировать по значению мета-поля
meta_value_num - сортировать по численному значению мета-поля
Более подробно о WP_Query почитайте здесь
Скрытое содержимое доступно для зарегистрированных пользователей!
 
Ммм... перечитал, данную статью но не до конца понял, вот есть строка:
<?php if (have_posts()) : while (have_posts()) : the_post(); ?> если посты есть - запускает цикл wp, с ней и надо работать, но блин покажите на пальцах.
 
Ммм... перечитал, данную статью но не до конца понял, вот есть строка:
<?php if (have_posts()) : while (have_posts()) : the_post(); ?> если посты есть - запускает цикл wp, с ней и надо работать, но блин покажите на пальцах.

Добавляем куда-нибудь форму с методами сортировки:
Скрытое содержимое доступно для зарегистрированных пользователей!


Добавляем в functions.php
Скрытое содержимое доступно для зарегистрированных пользователей!

Это надо добавить перед циклом записей в шаблоне вывода фильтруемых постов, ну т.е. куда мы добавили нашу форму.
Скрытое содержимое доступно для зарегистрированных пользователей!


Метод не элегантный, но рабочий)
 
Добавляем куда-нибудь форму с методами сортировки:


Добавляем в functions.php

Это надо добавить перед циклом записей в шаблоне вывода фильтруемых постов, ну т.е. куда мы добавили нашу форму.


Метод не элегантный, но рабочий)
метод согласен рабочий, но есть одно одно "но" оно сортирует сначала по первой цифре , потом по второй, а потом по третьей (10 111 212 22 - вот так примерно и наоборот), а так вообще супер... ) в functions.php в строках 'orderby' => 'meta_value', заменил meta_value на meta_value_num и красота
 
Последнее редактирование:
Парни подскажите как реализовать, или костыль для ядра сделать. Короче делаем больше 10 запросов, допустим 10 параметров выбора в фильтре, то сразу грузит около минуты.. Если убрать до 9 5-6 сек.. Что может быть?
Если быть точнее, это запросы фильтра к произвольным полям.


PHP:
$args = array(
'post_type' => 'hosting',
'posts_per_page' => -1,
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'hosting_price',
'compare' => '>=',
'type' => 'NUMERIC',
'value' => 50
),
array(
'key' => 'hosting_price',
'compare' => '<=',
'type' => 'NUMERIC',
'value' => 10000
),
array(
'key' => 'hosting_disc_space',
'compare' => '>=',
'type' => 'NUMERIC',
'value' => 100
),
array(
'key' => 'hosting_disc_space',
'compare' => '<=',
'type' => 'NUMERIC',
'value' => 50000
)
),
array(
'relation' => 'AND',
array(
'key' => 'hosting_available_sites',
'compare' => '>=',
'type' => 'NUMERIC',
'value' => 1
),
array(
'key' => 'hosting_available_sites',
'compare' => '<=',
'type' => 'NUMERIC',
'value' => 30
),
array(
'key' => 'hosting_db_avaliable',
'compare' => '>=',
'type' => 'NUMERIC',
'value' => 1
),
array(
'key' => 'hosting_db_avaliable',
'compare' => '<=',
'type' => 'NUMERIC',
'value' => 30
),
array(
'key' => 'hosting_traffic',
'compare' => '=',
'type' => 'NUMERIC',
'value' => 0
),
array(
'key' => 'hosting_ssl',
'compare' => '=',
'value' => '1'
)
)
);

xFRKagvsIg4.jpg
 
Последнее редактирование:
Назад
Сверху