X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Как отсортировать записи по доп. полю и выбрать одну. WP
S1xteen
S1xteen
Topic Starter сообщение 24.12.2012, 18:07; Ответить: S1xteen
Сообщение #1


Бывалый
****

Группа: User
Сообщений: 293
Регистрация: 20.9.2010
Поблагодарили: 64 раза
Репутация:   12  


Плагин magic fields, доп поле 'weight' строкового типа, содержащее только вещественное число.

Вот так я могу выбрать нужную мне запись с полем weight=1.5, но не знаю как отсортировать все записи из $the_query и вывести одну, с наименьшим значением weight.

<? $the_query = new WP_Query( 'post_type=model&meta_key=weight&meta_value=1.5'); ?>

<?php $the_query->the_post(); ?>
    <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('model-thumb'); ?></a>
    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<?php wp_reset_query(); wp_reset_postdata();?>


P.S умею сортировать массивы чисел на С, но каким образом сортировать записи в wp - не понимаю.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Karlasan
Karlasan
сообщение 25.12.2012, 5:01; Ответить: Karlasan
Сообщение #2


Участник
***

Группа: User
Сообщений: 122
Регистрация: 25.4.2008
Поблагодарили: 63 раза
Репутация:   19  


попробуй так:
<? $the_query = new WP_Query( 'post_type=model&meta_key=weight&orderby=meta_value_num&order=ASC&posts_per_page=1'); ?>


Сообщение отредактировал Karlasan - 25.12.2012, 5:11


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
S1xteen
S1xteen
Topic Starter сообщение 25.12.2012, 17:39; Ответить: S1xteen
Сообщение #3


Бывалый
****

Группа: User
Сообщений: 293
Регистрация: 20.9.2010
Поблагодарили: 64 раза
Репутация:   12  


Karlasan, В принципе работает, но не так как надо. Записи выбираются даже те, в которых поле weight не заполнено.

По закону подлости реализацию искал очень долго, и как только спросил помощи здесь, сразу-же сам додумался о решении задачи smile.gif

Сделал вот так, м.б не очень красиво, но решает мою проблему, надеюсь ещё кому-нибудь пригодится.
<?php
$querystr = " SELECT wposts.*
    FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta
    WHERE wposts.ID = wpostmeta.post_id
    AND wpostmeta.meta_key = 'weight'
    AND NOT wpostmeta.meta_value = ''
    AND wposts.post_type = 'model'
    AND wposts.post_status = 'publish'
    ORDER BY wpostmeta.meta_value ASC
";
$pageposts = $wpdb->get_results($querystr, OBJECT);
if ($pageposts)
{
    foreach ($pageposts as $post) : setup_postdata($post); ?>
        <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('model-thumb'); ?></a>
        <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<?php break; endforeach; wp_reset_postdata(); } ?>


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Как заставить Google любить тебя?
Хочу роста трафа из Гугла : ))
100 Aslan88 24514 Сегодня, 2:38
автор: EconDude
Горячая тема (нет новых ответов) Как заработать новичку?
141 Emeralda 25579 Вчера, 12:43
автор: Emtec
Открытая тема (нет новых ответов) Как организовать индексацию защищенных pdf с ключами и ссылками
И разместить pdf на внешних жирных ресурсах
0 kirch 417 20.5.2018, 23:37
автор: kirch
Открытая тема (нет новых ответов) [Книга] Налог на глупость: Как я заработал в интернете 5,5 млн рублей.
7 kotovsky 2127 20.5.2018, 8:30
автор: kolor73
Открытая тема (нет новых ответов) Король социалок 7: Генератор видео и 5 способов как на нём заработать
0 Volgar 418 19.5.2018, 17:09
автор: Volgar


 



RSS Текстовая версия Сейчас: 22.5.2018, 5:14
Дизайн