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

Параметры товара

  • 24 февраля 2015 г. , редакция: 24 февраля 2015 г.
  • Доброго всем времени суток! Сразу оговорюсь, версия движка 5.3, и, насколько я понимаю, дополнительные характеристики товара и из значения отображаются в карточке товара в файле shop.view.id.php куском кода:
    Код
    //параметры товара
    if (!empty($result["param"]))
    {
    $this->get('param', 'shop', array("rows" => $result["param"], "id" => $result["id"]));
    }
    Правильно?
    Тогда вопрос... а где сама отображалка этих дополнительных характеристик живет, в каком файле? И сразу же второй вопрос... как убрать из отображения дополнительные характеристики товара и перечень их значений через запятую для характеристик, доступных к выбору при заказе?
    Вот как-то так...
    • 24 февраля 2015 г.
    • Аха... пока писал, вроде вспомнил... shop.view.param.php... эта же вьюха за отображение дополнительных характеристик отвечает...
      Тогда остается второй вопрос... как убрать отображение в этой вьюшке характеристик, которые доступны к выбору при заказе и влияют на цену?
      Они и так отображаются в модуле корзины...
      • 24 февраля 2015 г.
      • Только в настройках характеристики. Иначе в корзину будет попадать самое верхнее значение характеристики. Т.е. не будет выбора.
        • 24 февраля 2015 г.
        • Хм... но либо в версии 5.3 нет такого параметра у характеристики, доступного для редактирования в административной части сайта, либо одно из двух :)

          Частичный выход из ситуации я нашел, спасибо технической поддержке... в файле shop.view.param.php меняем код:
          Код
          /**
          * Шаблон вывода параметров товара
          */
          foreach ($result["rows"] as $param)
          {
          echo '<div class="shop_param' . ($param["type"] == 'title' ? '_title' : '') . '">' . $param["name"];

          на код:
          Код
          foreach ($result["rows"] as $param)
          {
          if ($param["id"] == 4) /* идентификатор, отключаемой характеристики, можно несколько в условие засунуть */
          {
          continue;
          }
          echo '<div class="shop_param' . ($param["type"] == 'title' ? '_title' : '') . '">' . $param["name"];

          Но это не особо универсальный выход и под каждую новую характеристику, нужно будет исправлять вьюшку...
          На мой взгляд проще добавить в запрос, осуществляющий выборку характеристик товара и их значений условие, исключающее попадание в результат характеристик с признаком "Доступна для выбора при заказе"...
          Вот только не знаю я где этот самый запрос есть :)

Новости

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

Форум