Ответить Новая тема Новый опрос 
Всего: 2 1 2 >
 Сортировка товаров на странице
musicmarkelov
Новичок
Сообщений: 59
Регистрация: 26-04-2011


09-11-2011 01:23
На странице можно выбрать сколько товаров из данной категории будет отображаться. Например 10 или 20 . А как сделать чтобы отоборжались ВСЕ товары в данной категории?
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
musicmarkelov
Новичок
Сообщений: 59
Регистрация: 26-04-2011


09-11-2011 01:24
$nArray = intval(Configuration::get('PS_PRODUCTS_PER_PAGE')) != 10 ? array(intval(Configuration::get('PS_PRODUCTS_PER_PAGE')), 10, 20, 50, 100) : array(10, 20, 50, 100);
asort($nArray);
$n = abs(intval(Tools::getValue('n', intval(Configuration::get('PS_PRODUCTS_PER_PAGE')))));
$p = abs(intval(Tools::getValue('p', 1)));
$range = 2; /* how many pages around page selected */

if (!$n)
$n = $nArray[0];
if ($p < 0)
$p = 0;

if ($p > ($nbProducts / $n))
$p = ceil($nbProducts / $n);
$pages_nb = ceil($nbProducts / intval($n));

$start = intval($p - $range);
if ($start < 1)
$start = 1;
$stop = intval($p + $range);
if ($stop > $pages_nb)
$stop = intval($pages_nb);
$smarty->assign('nb_products', $nbProducts);
$pagination_infos = array('pages_nb' => intval($pages_nb), 'p' => intval($p), 'n' => intval($n), 'nArray' => $nArray, 'range' => intval($range), 'start' => intval($start), 'stop' => intval($stop));
$smarty->assign($pagination_infos);
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
musicmarkelov
Новичок
Сообщений: 59
Регистрация: 26-04-2011


09-11-2011 01:25
Что нужно прописать чтобы можно было выбрать ВСЕ товары на странице?
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
e_v_medvedev
Профессионал
Сообщений: 806
Откуда: Москва
Регистрация: 25-03-2011


09-11-2011 01:56
Просто в админке в настройках магазина для товаров задать отображение например 10000 товаров на страницу и все.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
musicmarkelov
Новичок
Сообщений: 59
Регистрация: 26-04-2011


09-11-2011 02:42
Этот путь понятен, но тогда в категории где присутствуют 1200 товаров они будут грузится все сразу при входе на страницу. А нужно чтобы по умолчанию грузилось например 10 товаров, и при желание можно было выбрать 20 на страницу или 30 или ВСЕ. Что нужно и где прописать чтобы в меню можно было выбрать: на страницу 10, 20, 30, Все
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
e_v_medvedev
Профессионал
Сообщений: 806
Откуда: Москва
Регистрация: 25-03-2011


11-11-2011 16:00
А в стандартной теме есть блок кода выводимого на страницу для самостоятельного выбора пользователем количества товаров, выводимых на страницу.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
musicmarkelov
Новичок
Сообщений: 59
Регистрация: 26-04-2011


15-11-2011 14:55
Да он блок есть, но в нем нельзя выбрать показать ВСЕ товары, можно выбрать 10 или 20 или еще сколько то.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
e_v_medvedev
Профессионал
Сообщений: 806
Откуда: Москва
Регистрация: 25-03-2011


15-11-2011 17:43
Тогда можно добавить в шаблоне этого блока опцию "все", а для передачи на сервер для этой опции задать количество товаров на страницу 1000 или 10 000 (т.е. заведомо большую чем реальное количество товаров на странице).
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
musicmarkelov
Новичок
Сообщений: 59
Регистрация: 26-04-2011


16-11-2011 10:10
Именно про это и спрашивал как добавить опцию "все"?

$nArray = intval(Configuration::get('PS_PRODUCTS_PER_PAGE')) != 10 ? array(intval(Configuration::get('PS_PRODUCTS_PER_PAGE')), 10, 20, 50, 100) : array(10, 20, 50, 100);
asort($nArray);

10, 50, 100, 1000, (что нужно прописать чтобы добавить опцию "все"?)
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
e_v_medvedev
Профессионал
Сообщений: 806
Откуда: Москва
Регистрация: 25-03-2011


16-11-2011 18:21
Поправить pagination.tpl шаблон так, чтобы в пункт опции 1000 добавлялось наименование "Все" вместо "1000", а значение опции оставалось равным 1000.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос 
Всего: 2 1 2 >