Большой Воронежский Форум

Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел.
Вернуться   Большой Воронежский Форум » Компьютеры и все, что с ними связано » » Веб-дизайн
Что касается web-а... WebMaster-а Воронежа - объединяйтесь!

Закрытая тема
 
Опции темы
Старый 04.09.2012, 16:24   #1   
Форумец
 
Аватар для AlexanderSergeev
 
Сообщений: 1,076
Регистрация: 27.11.2008
Возраст: 30

AlexanderSergeev вне форума Не в сети
Exclamation Wordpress - произв. поля сортировать не по очереди из дочерних рубрик.

В сайдбаре осуществлен вывод постов из рубрики "события", причем у каждой записи есть произвольное поле "date".

wp_reset_query ();
query_posts(array(
'cat'=>1,
'meta_key'=>'date',
'orderby'=>'meta_value',
'post_type'=>'post',
'order'=>'DESC',
'showposts'=>'3'
));

и дальше вывод...

проблема в том, что я и так 08-09-2012 и так 08.09.2012 пробовал...короче к как бы я не задавал дату, не сортируются посты правильно.

Как отсортировать по произвольному полю даты?

Последний раз редактировалось AlexanderSergeev; 07.09.2012 в 20:39.
 
Старый 04.09.2012, 18:18   #2   
Форумец
 
Аватар для SeFuS
 
Сообщений: 87
Регистрация: 16.06.2007
Возраст: 36

SeFuS вне форума Не в сети
strtotime
 
Старый 04.09.2012, 19:48   #3   
highly mean
 
Сообщений: 1,128
Регистрация: 26.05.2011
Возраст: 35

silly вне форума Не в сети
Ну, наверно, 'orderby'=>'date'.
 
Старый 05.09.2012, 18:36   #4   
highly mean
 
Сообщений: 1,128
Регистрация: 26.05.2011
Возраст: 35

silly вне форума Не в сети
Я немного посмотрел документацию. Раз уж мета-поля хранятся в отдельной таблице на манер eav, то, очевидно, тип колонки meta_value — строковый и сортировка там алфавитная.
 
Старый 05.09.2012, 18:57   #5   
Форумец
 
Аватар для AlexanderSergeev
 
Сообщений: 1,076
Регистрация: 27.11.2008
Возраст: 30

AlexanderSergeev вне форума Не в сети
да в том то и дело.
нет вопроса например три поля сделать день,месяц,год, но опятьже..сортировать то в цикле как..

пока решений кроме как идиотскую выборку самому из базы писать не вижу((

P.S. да, как строку сортирует
 
Старый 05.09.2012, 18:59   #6   
Форумец
 
Аватар для AlexanderSergeev
 
Сообщений: 1,076
Регистрация: 27.11.2008
Возраст: 30

AlexanderSergeev вне форума Не в сети
strtotime? и куда это, движок лезть ковырять,чтобы при добавлении менял содержимое поля? человек то не будет в админке писать в формате strtotime...
 
Старый 05.09.2012, 20:11   #7   
highly mean
 
Сообщений: 1,128
Регистрация: 26.05.2011
Возраст: 35

silly вне форума Не в сети
Цитата:
Сообщение от AlexanderSergeev Посмотреть сообщение
нет вопроса например три поля сделать день,месяц,год, но опятьже..сортировать то в цикле как..
Каком цикле?
 
Старый 05.09.2012, 20:28   #8   
highly mean
 
Сообщений: 1,128
Регистрация: 26.05.2011
Возраст: 35

silly вне форума Не в сети
Попробуй 'orderby' => 'str_to_date(meta_value, \'%d-%m-%Y\')'.
 
Старый 06.09.2012, 14:13   #9   
Форумец
 
Аватар для AlexanderSergeev
 
Сообщений: 1,076
Регистрация: 27.11.2008
Возраст: 30

AlexanderSergeev вне форума Не в сети
F0CK, it's works!
 
Старый 07.09.2012, 13:01   #10   
Форумец
 
Аватар для AlexanderSergeev
 
Сообщений: 1,076
Регистрация: 27.11.2008
Возраст: 30

AlexanderSergeev вне форума Не в сети
Возникла еще одна проблема.

Постараюсь объяснить понятно, а не как всегда, т.к. решение сам пока не нашел.

Есть рубрика "события" id1;
Она содержит несколько подрубрик (для примера "район" id3, "город" id4, "облать" id5, "страна" id6);
Все посты содержат произвольное поле "date" вида dd.mm.YYYY;

Как сортировать по этому полю решили выше, но проблема вот с чем:
- в сайдбаре выводятся n последних события из ВСЕЙ РУБРИКИ "СОБЫТИЯ" (включая подкатегории), сортируются по пр.полю.

ПРОБЛЕМА: Выводятся сортированые записи сначала из одной рубрики, потом из другой и тд.

Т.е., например:

-пост1 (дата 30.09.2012), рубрика "район"
-пост3(дата 20.09.2012), рубрика "район"
-пост5 (дата 10.09.2012), рубрика "район"
-пост2(дата 29.09.2012), рубрика "город"
-пост4 (дата 19.09.2012), рубрика "город"
-пост6 (дата 09.09.2012), рубрика "город"

А нужно сделать так, чтобы просто все посты шли по дате, а не по очереди из каждой рубрики. т.е. пост1,пост2,пост3...

Помогите, как так сделать, как что в цикле указать?
 
Старый 07.09.2012, 20:41   #11   
Форумец
 
Аватар для AlexanderSergeev
 
Сообщений: 1,076
Регистрация: 27.11.2008
Возраст: 30

AlexanderSergeev вне форума Не в сети
Как выяснил (но проблему это не решило), такое происходит только при сортировке по произвольным полям.
Если сортировать по умолчанию (orderby=>date), то ВП пофиг на дочерние рубрики, сортирует все посты подряд.
 
Старый 09.09.2012, 10:40   #12   
Форумец
 
Аватар для AlexanderSergeev
 
Сообщений: 1,076
Регистрация: 27.11.2008
Возраст: 30

AlexanderSergeev вне форума Не в сети
Нашелся выход..на форуме зарубежном.
http://wordpress.org/support/topic/s...y-custom-field
 
Поиск в теме: 



Быстрый переход:

  Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Support by DrIQ & Netwind