Искать  
 
   
 
Сортировка записей
Отправлено: 03 Май 2011 07:45 A.M.   [ Игнорировать ]
Студент
Avatar
RankRank
Всего сообщений:  117
Зарегистрирован  2010-01-21

Вобщем задача такая. Я захожу в любую рубрику и вижу список записей из этой рубрики. Сверху есть ссылки “Сортировать по:” (по дате по комментариям и т.д). Как в шаблон который выводит отсортированные записи передать category id? Или можно как то по другому сделать?

Профиль
 
 
Отправлено: 03 Май 2011 10:23 A.M.   [ Игнорировать ]   [ # 1 ]
Студент
Avatar
RankRank
Всего сообщений:  113
Зарегистрирован  2010-08-30

Если у Вас на каждый вид сортировки отдельный шаблон - значит нужно будет меньше передавать параметров.
А теперь собственно как передать параметр на отдельную страницу как минимум 3 варианта:
1) GET передаем в urle id - категории либо url_title…. , а уже в шаблоне просто извлекаем,  http://site.ru/by_comment/russia_news/
2) POST - тут нужно будет уже писать php - вставки, почти аналогично (1)
3) Сессии тоже вставка пхп -кода, и не забываем удалять после всех манипуляций

вариант - 2, 3 - хороши что в url’е ничего не передается, но больше работы.

p.s Используй 1 вариант.

Профиль
 
 
Отправлено: 03 Май 2011 01:07 P.M.   [ Игнорировать ]   [ # 2 ]
Студент
RankRank
Всего сообщений:  131
Зарегистрирован  2010-12-14

Да, попробуй передавать через GET
будет что то типа
group_name/category/category_name/date
а в коде шаблона проверять
{if segment_4 == “date”}
...order by date….
{/if}

Профиль
 
 
Отправлено: 06 Май 2011 06:56 P.M.   [ Игнорировать ]   [ # 3 ]
Студент
Avatar
RankRank
Всего сообщений:  117
Зарегистрирован  2010-01-21
MaxStoun - 03 Май 2011 01:07 P.M.

Да, попробуй передавать через GET
будет что то типа
group_name/category/category_name/date
а в коде шаблона проверять
{if segment_4 == “date”}
...order by date….
{/if}

Можно готовый вариант? Я просто не пойму, вот у меня есть шаблон sort куда ведет ссылка, т.е. site.ru/sort. Где там еще category/category_name?

Профиль
 
 
Отправлено: 06 Май 2011 11:08 P.M.   [ Игнорировать ]   [ # 4 ]
Студент
RankRank
Всего сообщений:  131
Зарегистрирован  2010-12-14

Вы используете обычные сортировки типа orderby=“date” , orderby=“comment_total” или какие то особые сортировки ?
http://expressionengine.com/user_guide/modules/channel/parameters.html#par_orderby

Профиль
 
 
Отправлено: 06 Май 2011 11:29 P.M.   [ Игнорировать ]   [ # 5 ]
Студент
Avatar
RankRank
Всего сообщений:  117
Зарегистрирован  2010-01-21
MaxStoun - 06 Май 2011 11:08 P.M.

Вы используете обычные сортировки типа orderby=“date” , orderby=“comment_total” или какие то особые сортировки ?
http://expressionengine.com/user_guide/modules/channel/parameters.html#par_orderby

И обычные и собираюсь использовать особые, т.е. сортировку которую предлагает один модуль голосования.

Я вот не пойму одно если я уже нахожусь внутри категории, вот пример моего урла: http://site.ru/in/category/dtp (in - это название шаблона для вывода записей рубрики, dtp - название категории), как мне теперь в шаблоне in указать четвертым сегментом например date? Или я слишком сложно думаю.

Профиль
 
 
Отправлено: 07 Май 2011 12:49 A.M.   [ Игнорировать ]   [ # 6 ]
Студент
RankRank
Всего сообщений:  131
Зарегистрирован  2010-12-14

По идее просто можно указать site.ru/in/category/dtp/date
а внутри шаблона делать

{exp:channel:entries channel="somechannel" {if segment_4 == "date"}orderby="date"{if:elseif segment_4 == "anothersort"}orderby="anothersort"{/if} } 

по поводу особых сортировок - если их нельзя указать как параметр для тега exp:channel:entries, то можно писать что то типа

{if segment_4=="someCustomSort"}
   {exp
:...//  указываем вывод данных со специальной сортировкой
{if:else}
    {exp
:...// указываем вывод данных с обычной сортировкой (типа date, и т.д.)
{/if} 
Профиль
 
 
Отправлено: 07 Май 2011 01:39 A.M.   [ Игнорировать ]   [ # 7 ]
Студент
Avatar
RankRank
Всего сообщений:  117
Зарегистрирован  2010-01-21
MaxStoun - 07 Май 2011 12:49 A.M.

По идее просто можно указать site.ru/in/category/dtp/date

Да я то смысл понял, но дело в том что нужно чтобы название категорий динамически менялось, у меня же не одна категория dtp. Чтобы в зависимости от того в какой я категории нахожусь подставлялось dtp, dtp2, dtp3 например.

т.е. если я в шаблоне in пропишу:

Сортировать по: <a href="http://site.ru/in/category/dtp/date">дате</a

а сам буду находиться в категории dtp2, то при переходе по ссылке у меня отсортируются записи из категории dtp, а не из dtp2 как нужно.

Профиль
 
 
Отправлено: 07 Май 2011 03:34 P.M.   [ Игнорировать ]   [ # 8 ]
Студент
RankRank
Всего сообщений:  131
Зарегистрирован  2010-12-14

Можно подставлять

Сортировать по: <a href="{site_url}in/category/{segment_3}/date">дате</a

но конечно сложно дать вам совет, просто может быть я вас не так понимаю

Профиль
 
 
Отправлено: 07 Май 2011 07:09 P.M.   [ Игнорировать ]   [ # 9 ]
Студент
Avatar
RankRank
Всего сообщений:  117
Зарегистрирован  2010-01-21
MaxStoun - 07 Май 2011 03:34 P.M.

Можно подставлять

Сортировать по: <a href="{site_url}in/category/{segment_3}/date">дате</a

но конечно сложно дать вам совет, просто может быть я вас не так понимаю

Блин все таки плохо быть тупым. Я даже не знал что можно в урл подставить {segment_3}. Спасибо вам.

Профиль