Искать  
 
   
 
offset и orderby=“random” - параметры
Отправлено: 02 Январь 2011 03:50 P.M.   [ Игнорировать ]
Студент
Avatar
RankRank
Всего сообщений:  113
Зарегистрирован  2010-08-30

Здравствуйте, с прошедшим 2010 Годом!
Есть сайт (пока главная страница)

Есть 2 блока

1 - Случайные записи
2 - Послдн. записи

Я не хочу чтобы на главной странице показывалось 2 один. записи (точнее ссылки на них), вродь подсказили выход “offset” параметр.
Делаю в блоке случай. записи, открываю тэг и пишу

{exp:weblog:entries weblog="reviews" limit="4" offset="5" orderby="random" disable="member_data|trackbacks|category_fields|pagination"

По сути мы должны взять все кроме 5 послдн. записей, без параметра случайности работает отлично, но как только добавляем параметр orderby - он обрабатывается до параметра offset.  EE core 1.6.9

Как можно изменить приоритет параметров или обогнуть проблему ?
спасибо!

Профиль
 
 
Отправлено: 02 Январь 2011 05:05 P.M.   [ Игнорировать ]   [ # 1 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  644
Зарегистрирован  2009-04-11

Скорее всего ничего не поделаешь, из этих параметров конструируется SQL запрос. Можешь включить отладку запросов и поглядеть что происходит.

 Подпись 

Няшка, программист, фотограф, подкастер, блоггер и CEO студии FDCore Studio

Профиль
 
 
Отправлено: 02 Январь 2011 05:12 P.M.   [ Игнорировать ]   [ # 2 ]
Студент
Avatar
RankRank
Всего сообщений:  113
Зарегистрирован  2010-08-30

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

Профиль
 
 
Отправлено: 03 Январь 2011 03:06 A.M.   [ Игнорировать ]   [ # 3 ]
Member
Avatar
RankRankRank
Всего сообщений:  224
Зарегистрирован  2010-11-20

Используйте возможности exp:query для этой цели.
Однако имейте ввиду, что SQL-запросы со случайной сортировкой очень медленны и тяжелы для системы.
Достаточно сказать, что при каждом из них MySQL создает временную таблицу со всеми строками результата и назначает каждому из них случайный индекс сортировки...
Для EE это особенно актуально. При кол-ве записей в базе ~0.8 ~2 тыс. сайт с такими запросами начинает работь очень медленно!

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

Используйте возможности exp:query для этой цели.
Однако имейте ввиду, что SQL-запросы со случайной сортировкой очень медленны и тяжелы для системы.
Достаточно сказать, что при каждом из них MySQL создает временную таблицу со всеми строками результата и назначает каждому из них случайный индекс сортировки...
Для EE это особенно актуально. При кол-ве записей в базе ~0.8 ~2 тыс. сайт с такими запросами начинает работь очень медленно!

Спасибо за вариант, я уже изменил структуру сайта - показалось проще, чем иметь дело с sql запросами.

Профиль