По умолчанию в Virtuemart 1.1.x строка навигации по страницам товаров, даже страница одна, все равно выводится. Нам оно не надо. Нам нужно, чтобы было так: если товаров у нас больше, чем на одну страницу — появляется строка навигации с кнопками Назад, Вперед, ну и дале по тексту, что там еще в Virtuemart есть. Если же товаров ровно на одну страницу — чего ее показывать, эту навигацию, убираем ее.
Приступим.
Открываем файл \components\com_virtuemart\themes\default\templates\browse\includes\browse_pagenav.tpl.php и видим там код:
<!-- BEGIN PAGE NAVIGATION --> <div align="center"> < ?php $pagenav->writePagesLinks( $search_string ); ?> < ?php if( $show_limitbox ) { ?> <br/><br/> <form action="< ?php echo $search_string ?>" method="post"> < ?php echo $VM_LANG->_('PN_DISPLAY_NR') ?> < ?php $pagenav->writeLimitBox( $search_string ); ?> <noscript><input class="button" type="submit" value="< ?php echo $VM_LANG->_('PHPSHOP_SUBMIT') ?>" /></noscript> </form> < ?php } $pagenav->writePagesCounter(); ?> </div> <!-- END PAGE NAVIGATION -->
Меняем его на этот:
<!-- BEGIN PAGE NAVIGATION --> <div align="center"> < ?php if ($pagenav->total > 20) { $pagenav->writePagesLinks( $search_string ); if( $show_limitbox ) { ?> <br/><br/> <form action="< ?php echo $search_string ?>" method="post"> < ?php echo $VM_LANG->_('PN_DISPLAY_NR') ?> < ?php $pagenav->writeLimitBox( $search_string ); ?> <noscript><input class="button" type="submit" value="< ?php echo $VM_LANG->_('PHPSHOP_SUBMIT') ?>" /></noscript> </form> < ?php } $pagenav->writePagesCounter(); } ?> </div> <!-- END PAGE NAVIGATION -->
и радуемся жизни. Как видно из кода, я только добавил условный оператор и все.
Обратите внимание на $pagenav->total > 20.
Total — это общее количество товаров в категории (класс vmPageNav в файле administrator\components\com_virtuemart\classes\pageNavigation.class.php)
20 — это количество выводимых товаров на страницу, устанавливается в настройках Joomla (Сайт -> Общие настройки -> «Установки сайта» -> пункт «Длина списка»)
т.е. получается, что если товаров больше 20 (все на одну страницу не помещаются) — выводим строку навигации.