[Помогите] Разделить отображение категорий

Тема в разделе "OpenCart", создана пользователем alex_storm, 18 июн 2013.

  1. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Хочу разделить отображение категорий и модулей в категориях.
    В чем идея, есть категории товаров для оптовой покупки и для розничной.
    Для оптовых категориях хочу создать отображение товаров в виде сетки, а для розничной в виде списка.
    Прикол в том, что нужно еще разделить отображение модулей и баннеров для каждой группы категорий свое.

    Вот что я сделал:
    Взял зашел в Ситема-Схемы и добавил новую схему product/categorytoo
    После этого взял сделал дубль файлов категории и переименовал их в categorytoo
    Все бы хорошо, да вот только Вы дает ошибку при входе по этой ссылке:
    PHP:
    Fatal errorCall to a member function getCategory() on a non-object in catalog/controller/product/categorytoo.php on line 104
    В коде показывает вот на эту строку:
    PHP:
    $category_info $this->model_catalog_category->getCategory($category_id);
    Пробовал менять на вот эту:
    PHP:
    $category_info $this->model_catalog_category->getCategoryToo($category_id);
    Все равно не пашет...

    Что я мог пропустить?
    --- добавлено: 18 июн 2013 в 19:46 ---
    Разобрался, забыл указать правильный путь к модели)
    PHP:
    $category_info $this->model_catalog_categorytoo->getCategory($category_id);
    Теперь я хоть вижу, что ничего не вижу. Получается, что если я хочу сделать вывод любого модуля на странице, то он не выводится... Я так понимаю, придется сделать полностью дополнительные строки и базу для этих целей что ли?
     
  2. Bnopen

    Bnopen Команда форума

    Регистрация:
    3 мар 2013
    Сообщения:
    1.264
    Симпатии:
    534
    alex_storm, сегодня уже бросал ссылку на этот мод в другой теме)
    Отдельный шаблон для категории Opencart (TFPIC OpenCart)

    и почитать здесь -
     
  3. Baco

    Baco Антихронофаг Команда форума

    Регистрация:
    9 окт 2012
    Сообщения:
    803
    Симпатии:
    399
    Если говорить коротко, то сделать модулем по типу GridEnabled, но вместо схем, сделать перебор масива с категорями, к которым присвоить checkbox value, а уже на самих страницах категорий, задать условие на скрипт-переключатель лист\грид... ex.: if (config_style_categ==1) { 'greed'} else { 'list' }
     
  4. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Тут дело не только в отображении - Сетка/Лист
    Получается, будет полностью различное отображение контента, баннеров, модулей... Я думал разделить это как то по человечески, а теперь вот думаю, что придется создавать дополнительно базу данных.
    Только если это сделать, товары ведь тоже придется создавать и получится удвоение кода в разы, что не есть гуд.
    --- добавлено: 19 июн 2013 в 12:31 ---
    Тоже делема получается. Каждый раз придется зализать в БД и в код при добавлении новой категории.... Но пока как вариант уменьшения кода
     
  5. Bnopen

    Bnopen Команда форума

    Регистрация:
    3 мар 2013
    Сообщения:
    1.264
    Симпатии:
    534
    alex_storm, зачем лазить с бд и код? бд с товарами одна для магазина, надо только будет сделать шаблон другой для категории. При добавлении новой категории надо будет скопировать темлейт категории и назвать в соостветствии с id новой категории. А в шаблоне можно настроить и вывод и стили свои, отличные от отображения в рознице.
     
  6. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Bnopen, Правильно, а ID категории от куда брать то - только из базы данных.
     
  7. Bnopen

    Bnopen Команда форума

    Регистрация:
    3 мар 2013
    Сообщения:
    1.264
    Симпатии:
    534
    alex_storm, так а зачем их брать? Допустим есть две категории /opt и /opt-super, смотрим их айди в админке (напр., 23 и 25) и делаем два файла с шаблоном под опт, которые нам надо category-23.tpl и category-23.tpl.
    Или нужно добиться полной автоматизации? С отдельным шаблоном для категорий, да, нужно копировать шаб для новой категории.
     
  8. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Bnopen, Может я чего то не понимаю... Я вошел на страницу категорий, потом перешел в саму категорию и там не увидел где указан ID категории.
     
  9. Bnopen

    Bnopen Команда форума

    Регистрация:
    3 мар 2013
    Сообщения:
    1.264
    Симпатии:
    534
    alex_storm, id категории можно посмотреть в админке. Или если нету чпу на сайте, тогда в урле отображается id. вот код, можно вывести id и на сайте -
     
  10. blackfm

    blackfm

    Регистрация:
    29 янв 2013
    Сообщения:
    182
    Симпатии:
    35
    ну с отображением категории все понятно. а как сделать новую позицию для вывода модуля в этой категории.
    Идея такова, что хочу сделать, что корневая категория не выводила вовсе товара. а только позиции модулей с "Новинками", "Популярные", и спец.предложениями именно с этой категории и подкатегорий
     
  11. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    У меня практически даже задача стоит) Поэтому сижу и думаю, как лучше это сделать.
    К примеру на джумле можно выбрать позиции вывода для модуля и любую страницу в меню. Может как то можно сделать аналогичный модуль для этих целей?
     
    blackfm нравится это.
  12. blackfm

    blackfm

    Регистрация:
    29 янв 2013
    Сообщения:
    182
    Симпатии:
    35
    я не силен в php.но есть мысль, что можно сделать схему отдельную для каждой категории, в которых нужно выводить отдельно дополнительные блоки, и где-то указать новую позицию для блоков.
    Реально такое сделать?
     
  13. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Выше выложенный модуль примерно такое и делает, только каждый раз, когда тебе необходим новый шаблон для категории, тебе нужно залазить в код и создавать его.
    Получается, что нет удобства для пользователей, которые не секут в пешке.