Вывести все зиписи из всех разделов каталога без разделения на категории

#1 4 марта 2014 в 22:13
Есть ли простое решение этого вопроса. Чтобы без изнуряющих кликов мышью из категории в категорию пользователю просто выводились все записи каталога (универсальный каталог) с припиской о том, к какой категории они относятся? По рейтингу чтоли, или по дате — всё равно как, главное без постоянного кликанья и всё на одной странице с пагинацией.
#2 5 марта 2014 в 00:22
Решение на скорую руку.

Файл /components/catalog/router.php

перед return $routes; (в самом конце) добавить
  1. $routes[] = array(
  2. '_uri' => '/^catalog\/view_all$/i',
  3. 'do' => 'list_all'
  4. );
Файл /components/catalog/frontend.php где-нибудь в секции LIST OF CATEGORIES вставить
  1. if ($do == 'list_all'){ //List of all items
  2.  
  3. $items = array();
  4.  
  5. $sql = "SELECT *
  6. FROM cms_uc_items
  7. WHERE `published` = 1
  8. ";
  9.  
  10. $result = $inDB->query($sql);
  11.  
  12. if (!$inDB->num_rows($result)) { return false; }
  13.  
  14. while($item = $inDB->fetch_assoc($result)){
  15. $items[] = $item;
  16. }
  17.  
  18. cmsPage::initTemplate('components', 'com_catalog_index')->
  19. assign('cfg', $cfg)->
  20. assign('title', $pagetitle)->
  21. assign('items', $items)->
  22. display('com_catalog_items.tpl');
  23.  
  24. }
Создать файл com_catalog_items.tpl в папке components вашего шаблона и вставить в него {debug}

Перейти по адресу ваш_сайт/catalog/view_all и смотреть Smarty Debug Console

Пример записи в файле com_catalog_items.tpl, который выведет заголовки всех записей:

  1. <ul>
  2. {foreach from=$items item=item}
  3. <li>{$item.title}</li>
  4. {/foreach}
  5. </ul>
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.