HostCMS писал(а):
я не совсем понимаю Ваш вопрос. limit указывает количество на страницу, offset — смещение (не путать с page) и определяется он в методе parseUrl().
Stepan0v писал(а):
Как изменить значение items_on_page (или itemsOnPage)?
Что именно тут не понятно?
Вероятно не понятно не в вопросе, а в пояснении.
Объясняю про страницы.
1) Элементов много → список разделен на страницы. Например, у меня 100 элементов.
2) В Структуре сайта в соответствующем разделе указан параметр
"Число выводимых элементов на страницу" = 10, что соответствует параметру
itemsOnPage. Исходя из этого параметра рассчитывается отображение страниц: количество страниц, количество элементов на странице, смещение для каждой страницы.
3) В итоге получаем 10 страниц:
Цитата:
1 страница: 1-10 элементы
2 страница: 11-20 элементы
...
10 страница: 91-100 элементы
4) в ТДС указан параметр limit(10). Всё хорошо.
5) Я хочу изменить количество выводимых элементов. Для этого на странице у меня есть
<select>. Я выбираю значение 20 и передаю его методом Post.
6) При перезагрузке страницы в ТДС я проверю Post-переменную и меняю значение
limit(20)
7) После этого у меня становится
5 страниц (что логично при 100 элементах)
8) Элементы на страницах распределяются следующим образом:
Цитата:
1 страница: 1-20 элементы
2 страница: 11-31 элементы
3 страница: 21-41 элементы
...
5 страница: 51-70 элементы.
Т.е.
offset рассчитывается не исходя из измененного
limit(), а исходя из
значения itemsOnPage. Но элементы выводятся исходя из
limit(): количество страниц рассчитывается исходя из
limit() и количество выводимых элементов на странице исходя из
limit(), но смещение остается прежним - исходя из
itemsOnPage.
Вы мне предлагаете вручную выставлять offset для каждой страницы вручную? Или я не правильно вас понял?