Перейти к содержанию

Рекомендуемые сообщения

Код вывода, создал опцию "Цвет" на основе опции "Radio", почему-то не передает данные в корзину.

Если ставлю опцию обязательной, выскакивает ошибка, что цвет не выбран...но работает все нормально...радио выбирает.

Подскажите, кто сталкивался

<?php if ($option['type'] == 'radio') { ?>
            <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
              <div id="input-option<?php echo $option['product_option_id']; ?>">
                <div class="radio-color">
                  <?php foreach ($option['product_option_value'] as $option_value) { ?>
                    <label>
                      <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" hidden />
                      <?php if ($option_value['image']) { ?>
                      <img src="<?php echo $option_value['image']; ?>" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" class="img-thumbnail color-thumb"/> 
                      <?php } ?>                
                      <?php if ($option_value['price']) { ?>
                      (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
                      <?php } ?>
                    </label>
                  <?php } ?>
                </div>
              </div>
            </div>
            <?php } ?>

 

Изменено пользователем siar2011

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поставьте product color option или product option to color и забудьте про это. Если есть адрес сайта, то было бы хорошо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

halfhope, нужно сделать именно по своему, т.к. редактирование будет через excel)

http://metall-msc.ru/profnastil/c-21/c-21-otechestvenij?product_id=3545

Сайт в разработке) можно посмотреть на этом товаре

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У вас неправильная разметка

 

Стандартная в опенкарт

Spoiler

<div class="form-group required">
<label class="control-label">Radio</label>
<div id="input-option218">
	<div class="radio">
		<label>
			<input name="option[218]" value="5" type="radio">
			Small (+$12.00)
		</label>
	</div>
	<div class="radio">
		<label>
			<input name="option[218]" value="6" type="radio">
			Medium (+$24.00)
		</label>
	</div>
	<div class="radio">
		<label>
			<input name="option[218]" value="7" type="radio">
			Large (+$36.00)
		</label>
	</div>
</div>
</div>

 

 

Ваша

Spoiler

<div class="form-group required">
              <div id="input-option20">
                <div class="radio">
                                      <label>
                      <input name="option[20]" value="118" hidden="" type="radio">
                                            <img src="http://metall-msc.ru/image/cache/catalog/colors/chokolate-50x50.png" alt="Шоколадно-коричневый" class="img-thumbnail color-thumb"> 
                                     
                                          </label>
                                      <label>
                      <input name="option[20]" value="114" hidden="" type="radio">
                                            <img src="http://metall-msc.ru/image/cache/catalog/colors/blue-50x50.png" alt="Синий" class="img-thumbnail color-thumb"> 
                                     
                                          </label>
                                      <label>
                      <input name="option[20]" value="115" hidden="" type="radio">
                                            <img src="http://metall-msc.ru/image/cache/catalog/colors/green-moh-50x50.png" alt="Зеленый мох" class="img-thumbnail color-thumb"> 
                                     
                                          </label>
                                      <label>
                      <input name="option[20]" value="116" hidden="" type="radio">
                                            <img src="http://metall-msc.ru/image/cache/catalog/colors/vishneviy-50x50.png" alt="Вишневый" class="img-thumbnail color-thumb"> 
                                     
                                          </label>
                                      <label>
                      <input name="option[20]" value="117" hidden="" type="radio">
                                            <img src="http://metall-msc.ru/image/cache/catalog/colors/beige-50x50.png" alt="Бежевый" class="img-thumbnail color-thumb"> 
                                     
                                          </label>
                                  </div>
              </div><div class="text-danger">Цвет обязательно!</div>
            </div>

 

 

Разница

Сначала div class radio, потом label для каждого

	<div class="radio">
		<label>
			<input name="option[218]" value="5" type="radio">
			Small (+$12.00)
		</label>
	</div>

у вас div class radio для всех, а потом уже label

 

Изменено пользователем unknown

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
<?php if ($option['type'] == 'radio') { ?>
  <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
    <div id="input-option<?php echo $option['product_option_id']; ?>" class="radio-color">
    	<?php foreach ($option['product_option_value'] as $option_value) { ?>
           <div class="radio">
              <label>
                 <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" hidden />
                 <?php if ($option_value['image']) { ?>
                    <img src="<?php echo $option_value['image']; ?>" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" class="img-thumbnail color-thumb"/> 
                  <?php } ?>               
                   <?php if ($option_value['price']) { ?>
                     (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
                   <?php } ?>
                </label>
              </div>
           <?php } ?>
        </div>
     </div>
<?php } ?>

Поправил, ничего не изменилось)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вставил полностью стандартную разметку, ничего не помогло)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Зашел на ваш сайт, добавил Шоколадно-коричневый

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я уже поправил, ошибка была в следующем: 

Есть <div id='product'> в нем должны находиться опции....иначе они не будут работать. 

Кривая начальная разметка страницы)

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От Pavel666
      Скачать/Купить дополнение


      Фикс арифметики корзины
      Исправляет баг со сложением(умножением) лишних цифр после запятой в корзине. работает на 2.3, 2.2, 2,1
       
      Добавил версию что округляет строго в большую сторону.
      т.е fix-cart.round округляет в ближайшую, округление привязано к количеству знаков после запятой в настройках валюты
      fix-cart.ceil округляет в большую, округление привязано к количеству знаков после запятой в настройках валюты
      Добавил Pavel666 Добавлено 01.10.2018 Категория Покупки, оформление заказа, корзина Системные требования Сайт разработчика Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0 ocStore 2.3
      2.2
      2.1 OpenCart.Pro, ocShop  
    • От Pavel666
      Исправляет баг со сложением(умножением) лишних цифр после запятой в корзине. работает на 2.3, 2.2, 2,1
       
      Добавил версию что округляет строго в большую сторону.
      т.е fix-cart.round округляет в ближайшую, округление привязано к количеству знаков после запятой в настройках валюты
      fix-cart.ceil округляет в большую, округление привязано к количеству знаков после запятой в настройках валюты
    • От seregin
      370.00 руб
      Скачать/Купить дополнение


      Опции в категориях (с обновлением цены)
      Модуль добавляет расширенные возможности для опций и отображает их на всех стандартных модулях и страницах с товарами.

      Основные возможности:
      Автоматический выбор первой опции в группе Установка акции для цены опции Компактный вид опций Выбор количества Отображение выбранных групп опций и их значений как на витрине, так и на странице товара Артикул для каждой опции Обновление цены при выборе опции и изменении количества Добавлены префиксы опций (=, ×, ÷)  
      Совместимость

      Opencart: 2.2.0.0 - 3.0.3.1
      ocStore: 2.3.0.2 - 2.3.0.2.3

      Не совместим с другими модулями изменяющие функционал опций товара.

      Демонстрация

      Главная страница — Перейти на сайт
      Настройки – Перейти на сайт

      Доступ в административную панель:

      Логин - demo
      Пароль — demo

      Поддержка:

      Для нестандартных модулей необходимо сделать дополнительную адаптацию. Стоимость адаптации 150 рублей в зависимости от количества модулей.
      Добавил seregin Добавлено 15.08.2016 Категория Опции Системные требования Сайт разработчика http://seregin-pro.ru/ Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2 ocStore 2.3 OpenCart.Pro, ocShop Не проверялось  
    • От seregin
      Модуль добавляет расширенные возможности для опций и отображает их на всех стандартных модулях и страницах с товарами.

      Основные возможности:
      Автоматический выбор первой опции в группе Установка акции для цены опции Компактный вид опций Выбор количества Отображение выбранных групп опций и их значений как на витрине, так и на странице товара Артикул для каждой опции Обновление цены при выборе опции и изменении количества Добавлены префиксы опций (=, ×, ÷)  
      Совместимость

      Opencart: 2.2.0.0 - 3.0.3.1
      ocStore: 2.3.0.2 - 2.3.0.2.3

      Не совместим с другими модулями изменяющие функционал опций товара.

      Демонстрация

      Главная страница — Перейти на сайт
      Настройки – Перейти на сайт

      Доступ в административную панель:

      Логин - demo
      Пароль — demo

      Поддержка:

      Для нестандартных модулей необходимо сделать дополнительную адаптацию. Стоимость адаптации 150 рублей в зависимости от количества модулей.
    • От ArtemPitov
      1 050.00 руб · Срок продления: 500.00 руб за 360 дней
      Скачать/Купить дополнение


      Брошенная корзина + вечная корзина + редактор корзин
      Будет работать с симплой, собирает заказы гостей, после окончания периода лицензии модуль будет работать 
       
      Дополнения предназначено для сбора, обработки и рассылки уведомлений о забытых корзинах. 
      Система отслеживает добавления и изменения товаров в корзине, а также оформления заказа, тем самым собирает информацию о забытых или не до конца оформленных заказах. 
      Опираясь на статистические данные, около 70 – 80% корзин интернет-магазина остаются брошенными, а в реалиях OpenCart с временем жизни корзины для гостей не более часа статистика может быть еще хуже. Для борьбы с этой проблемой была разработана система, включающая в себе сбор, восстановления и хранения товаров в корзине покупателя.
       
      Демо:
      admin  
      Модуль собирает:
       Информация о покупателе. ФИО, Номер телефона, Email, Магазин в котором оформлялся заказ (актуально для мультимагазинов), язык магазина (актуально для мультиязычных магазинов). Сохранения данных корзины. Собираются все стандартные данные корзины OpenCart.  
      Возможности:
      Отправка email уведомлений. Рассылка сообщений клиентам о забытых заказах с возможною добавления купона и повторных отправок оповещений, учитывается язик и магазин в котором находится потерянная корзина. Восстановления корзины по ссылке. Позволяет восстановить корзину по ссылке, для постоянных клиентов с авторизацией. Во время формирования ссылки используется два ключа шифрования, первый внешний которые вы можете указать в настройках, второй системный.   Не ограничено хранения товаров в корзине. Метка корзины хранится в cookie, у каждого покупателя индивидуальная и зашифрованная внутренним и внешним кличем. Для мультимагазина формируются индивидуальные метки. Рассылка уведомлений. Предусмотрена автоматическая (cron) или ручная рассылка уведомлений, дополнительно в целях безопасности защищена секретным кличем который формируется для каждой копии модуля индивидуально.  
      Установка:
       Инструкция по установке доступна при скачивание модуля   
      Технические требования:
      PHP версии 5.6 или выше OpenCart и другие сборки версий 2.х  IonCube 10  
      Лицензия
       
       
      Добавил ArtemPitov Добавлено 23.04.2018 Категория Покупки, оформление заказа, корзина Системные требования Ioncube Loader 10, php 5.6 и выше Сайт разработчика http://pitov.pro Старая цена Метод активации По запросу в ЛС Ioncube Loader Требуется OpenCart 2.3
      2.2
      2.1
      2.0 ocStore 2.3
      2.2
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х  
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.