Вход • Регистрация

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

  • 09 июля 2011 г.
  • Как нужно организовать характеристики товара или метки, или категории, чтобы при просмотре одного товара производителя Х, сбоку можно бы было вывести все остальные модели этого же производителя в виде текстового списка?
    • 10 июля 2011 г.
    • Да тут неважно. Можно и по категориям производителей сгруппировать, можно и доп.характеристиками.
      Берете тег show_block_shop и им выводите.
      Если что, оформление списка правите в /modules/shop/shop.view.php функция show_block
      • 11 июля 2011 г. , редакция: 12 июля 2011 г.
      • спасибо за ответ, Виталий -- это полезная функция, но я что-то не пойму как отобразить другие модели производителя, чей товар сейчас отображен. как выцепить, какой производитель текущего товара, чтобы взять его id и по нему вывести остальные его товары. В урл только название модели, и скрытыми полями вроде тоже ничего такого не передается. Подскажете?

        UPD :) процесс поиска решения идёт

        self::param($row["param"]); -- выводит все параметры, а как вывести только какой-то конкретный параметр, по номеру, например?

        Также как вывести не только параметр, но и его возможные варианты, если это мультивыбор?
  • 12 июля 2011 г.
  • может не совсем понятен вопрос?

    детализирую... вот есть тэг вывода блока товаров <insert name="show_block" module="shop" sort="price" count="4" cat_id="12">

    есть еще вывод с помощью параметров, например "param3=5"

    то есть общая конструкция будет выглядеть
    Код

    insert name="show_block" module="shop" sort="price" count="4" cat_id="12" param="param3=5">


    С помощью какой конструкции php, мне нужно взять из текущего товара (я так понимаю это массив $row в функции id()) значение параметра "производитель товара", чтобы его подставить вместо "param3=5" в конструкции выше?

    например, как я это представляю себе, $this->$row["params"]["param8"] или self::param($row["param"][8])??????
    Заранее благодарю!
  • 12 июля 2011 г.
  • продолжаю переписку с самим собой

    скорее всего это решается все-таки правильно структурой сайта, нужно правильно задействовать "страницы сайта" с нужными шаблонами.php под каждого производителя, "меню сайта" и т.д.

    Если у вас есть совет как люди это правильно делают, то напишите, а если нет, то вопрос можно считать снятым -- все что я просил решается организацией, а не программированием :)
  • 12 июля 2011 г.
  • и все же у меня не получается
    Код
    <insert name="show_block" module="shop" cat_id="11" images="2">

    такой блок работает и выводит все, что входит в категорию 11

    а вот такой блок
    Код
    <insert name="show_block" module="shop" cat_id="11" images="2" param="param8=2">

    не работает, то есть не выводятся товара категории 11 с характеристикой 8, значением 2.

    ЧЯДНТ? (что я делаю не так) :)
    • 13 июля 2011 г.
    • Скорее всего у Вас проблема в том, что Вы не правильно берете значение 2. То есть 2 - второе значение у списка характеристики 8, но идентификатор у нее другой, к примеру 45. Тогда надо писать param8=45
      Правильное значение можно посмотреть при поиске. Там сформируется как раз строка ...&p8[]=45&...
      • 13 июля 2011 г.
      • да, это точно -- я брал свои цифры из админки в поле id (когда раскрываешь дополнительное меню).
        Теперь работает, по Вашему совету. Марина, огромное спасибо!
  • 13 июля 2011 г.
  • Я наверное для этих целей буду делать дополнительные категории.
    В качестве дополнительной категории буду указывать категорию брэнд.
    • 13 июля 2011 г.
    • Я тоже так делал, но не мне не удобно.
      По параметрам более гибко, тем более, что теперь ясно как это делать.
  • 13 июля 2011 г.
  • Спасибо за просветление - вижу что так на лицо минимизация. Обязательно воспользуюсь в проекте который поступил на разработку.
  • 14 июля 2011 г.
  • Сделал по-другому, предыдущий вариант работал для шаблонных страниц, в которых надо вручную указывать товары каких производителей выводить. Мне же было нужно, чтобы site.php сам определял, какая категория сейчас текущая и сам выводил все остальные товары текущей категории.
    Для этого сделал небольшой хак, который если кому-то надо, можно предложить в новую версию cms.

    Это дополнение к стандартному тэгу <insert name="show_block" module="shop" cat_id="11">, только теперь вместо номера категории можно вписать cat_id="current" и будут выводиться товары только из текущей категории.

    Чтобы это заработало, нужно внести вставить в shop.php, в функцию show_block, в начале функции (строка 109) следующую проверку
    Код

    if ($attributes["cat_id"] == "current")
    { $cat_id = $this->diafan->cat; }
    else { $cat_id = intval($attributes["cat_id"]); }


    К авторам cms просьба ответить, -- это корректное изменение, не повлечет за собой глюков где-нибудь в другом месте?
  • 19 июля 2011 г. , редакция: 19 июля 2011 г.
  • Значится так.
    Делаю меню в виде лого, для выбора всех товаров производителя, и выше описаное немного не подходит.
    Первое что пришло в голову, к меню крепить запросы генерируемые формой поиска по товарам. Получается нечто типа : http://diafan/shop/?catid=&n=&a=&d=&pr1=&pr2=&p1[]=1&p2=&p4=
    Както грамоздко получается и такого типа ссылки будут попадать в индекс что тоже не очень красиво. И ещё 1 минус на лицо - перед списком красуется надпись "Поиск по товарам", но пользователь фактически не пользовался поиском а перешёл в группу товаров.
    Есть какоето более изящное решение?
    И ещё когда вводим дополнительный параметр типа выпадающий список то там появляются 2 поля к заполнению / Значения, псевдоссылка
    Первое понятно для чего а вот второе? Может быть его как нибудь сюда привязать как-раз будет в тему.
  • 02 июля 2013 г.
  • Не очень удобно смотреть значения хар-к при поиске из строки типа "&p8[]=45&"
    Есть способ как-то их по другому вычленять?

    Может в базу заглядывать?

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум