Категории в компоненте Доска объявлений

#1 12 декабря 2011 в 00:55
На главной странице Доски объявлений выводятся список категорий и новые объявления.
1. Как сделать, что при переходе в любую из категорий, список категорий не исчезал?
2. Как сделать, чтобы при просмотре конкретного объявления, список категорий не исчезал?
#2 15 декабря 2011 в 02:54
В очередной раз сам себе отвечаю. Может быть кому-то пригодится.
Ответ на п.1
В файле ../components/frontend.php найти:
  1. $cats = $model->getSubCats($category['id']);
Заменить на:
  1. $cats = $model->getSubCats($model->root_cat['id']);
Как я понял, п.2 так просто "не победить". Сделаю — отпишусь.
#3 18 декабря 2011 в 08:56
после такой замены пропадает список подрубрик!
#4 18 декабря 2011 в 09:38
KS, Каждый делает доску под себя как ему удобно)
Сделал ответ на п.2 шас дам ответ!
#5 18 декабря 2011 в 09:47
И так в файле ../components/frontend.php

перед
  1.  
  2. $smarty = $inCore->initSmarty('components', 'com_board_item.tpl');
  3.  
вставляем:

  1.  
  2. {//ОНОООООООООООООООО
  3.  
  4. //Получаем текущую категорию
  5. $category = $model->getCategory($model->category_id);
  6. if (!$category) { cmsCore::error404(); }
  7.  
  8. // Заголовки страницы
  9. if ($category['id'] == $model->root_cat['id']){
  10.  
  11. $pagetitle = $inCore->menuTitle();
  12. $pagetitle = $pagetitle ? $pagetitle : $_LANG['BOARD'];
  13.  
  14. }
  15. if ($category['id'] != $model->root_cat['id']) {
  16.  
  17. $pagetitle = $category['title'];
  18.  
  19. $category_path = $model->getCategoryPath($category['NSLeft'], $category['NSRight']);
  20. if($category_path){
  21. foreach($category_path as $pcat){
  22. $inPage->addPathway($pcat['title'], '/board/'.$pcat['id']);
  23. }
  24. }
  25.  
  26. }
  27.  
  28. //Формируем категории
  29. $cats = $model->getSubCats($category['id']);
  30.  
  31.  
  32. $smarty = $inCore->initSmarty('components', 'com_board_cats.tpl');
  33. $smarty->assign('pagetitle', $pagetitle);
  34. $smarty->assign('cats', $cats);
  35. $smarty->assign('cat', $category);
  36. $smarty->assign('root_id', $model->root_cat['id']);
  37. $smarty->assign('is_user', $inUser->id);
  38. $smarty->assign('maxcols', $model->config['maxcols']);
  39. $smarty->display('com_board_cats.tpl');}
  40.  
Можно еще вроде упростить но мне пока что некогда)
#6 18 декабря 2011 в 11:11
Kupuexa, премного благодарен за помощь!
#7 18 декабря 2011 в 14:23
Можно еще сделать так чтобы при просмотре объявления видны были не все Корневые категории, а только подрубрики этой категории.
Допустим — заходим в корневую АвтоМото, и там есть подрубрики — Колеса Литье и тп…
Открываем объявление из Автомото, подрубрики остаются на виду :

  1. {
  2. //Получаем текущую категорию
  3. $category = $model->getCategory($item['category_id']);
  4. if (!$category) { cmsCore::error404(); }
  5. if ($category['id'] == $model->root_cat['id']){
  6. $pagetitle = $inCore->menuTitle();
  7. $pagetitle = $pagetitle ? $pagetitle : $_LANG['BOARD'];}
  8. if ($category['id'] != $model->root_cat['id']) {
  9. $pagetitle = $category['title'];}
  10. $cats = $model->getSubCats($category['id']);
  11. $smarty = $inCore->initSmarty('components', 'com_board_cats.tpl');
  12. $smarty->assign('pagetitle', $pagetitle);
  13. $smarty->assign('cats', $cats);
  14. $smarty->assign('cat', $category);
  15. $smarty->display('com_board_cats.tpl');}
вставить нужно куда Kupuexa написал…
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.