Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Код карточки товара


happyvadik

Recommended Posts

Помогите с кодом в карточке товара.

Есть такая карточка: http://xds.businessbag.com.ua/albertlarger328b

 

Нужно опции разместить по 4 в ряд.

В 1.5.4. у меня это было реализовано правкой в catalog\view\theme\default\template\product\product.tpl (мАпед не мой):

<?php if ($option['type'] == 'image') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <table class="option-image">
            
            <?php $i=1; ?>        

            <?php foreach ($option['option_value'] as $option_value) { ?>
            
            <?php if ($i%2 != 0) { ?>
              <tr>                         
            <?php } ?>  

               <td style="width: 1px;"><input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>"  id="option-value-<?php echo $option_value['product_option_value_id']; ?>" /></td>
              
              <td><label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><img src="<?php echo $option_value['image']; ?>" title="<?php echo $new_opt_title_string; ?>" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" /></label></td>
              
              
              <td><label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><?php echo $new_opt_string; ?>
                  <?php if ($option_value['price']) { ?>
                  <br>(<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
                  <?php } ?>
              </label></td>

            <?php if ($i%2 == 0) { ?>
              </tr>                         
            <?php } ?>

            <?php $i++; ?>

            <?php } ?>
          </table>
        </div>
        <br />
        <?php } ?>

Не могу догнать как это сделать на 2ке?

понимаю что здесь :

<?php if ($option['type'] == 'image') { ?>
                  <div class="form-group">
                           <label class="control-label">
								<?php if ($option['required']) { ?>
									<i class="fa fa-exclamation-circle required" data-toggle="tooltip" data-placement="left" title="<?php echo $product_required_text; ?>"></i>
								<?php } ?>
								<?php echo $option['name']; ?>
							</label>
							 
                    <div id="input-option<?php echo $option['product_option_id']; ?>">
                   <?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']; ?>" />
                    <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" /> 
                    
                  </label>
                </div>
                <?php } ?>

но как?

 

Буду премного благодарен, за помощь ученику :)

 

 

Надіслати
Поділитися на інших сайтах


Не даром написал в песочницу. Все просто, но я бы не дошел до этого.

 Tom, спасибо большое.

Змінено користувачем happyvadik
Надіслати
Поділитися на інших сайтах


Продолжим

Количество значений опции может быль от 2до 25, как ограничить вывод в карточку товара не больше 4 значений?

Спасибо

Надіслати
Поділитися на інших сайтах


Какая суть данного действия? Вы в самом товаре насоздаёте 20-25 опций , которые потом нужно обрезать уже в магазине до 4?

А вариант не заполнять больше этих самых четырёх ,чем тогда плох?

Надіслати
Поділитися на інших сайтах

Я ленивый, я бы такого не делал.

Но вот с витриной/ярлыком в категориях хочу сделать. то есть в карточке будет n, но в категорию на товар нужно вынести не больше 4, что бы они вместились в одну линию, а то получу разные по высоте ярлыки товар в категории и много пустого места или елечку.

Надіслати
Поділитися на інших сайтах


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

Надіслати
Поділитися на інших сайтах

картинки опции по любому буду делать меньше, но все равно 15 опций в 1 строку не втулю По этому и хотел сделать органичение. Буду пробывать через высоту блока. спасибо

Змінено користувачем happyvadik
Надіслати
Поділитися на інших сайтах


как-то не пошло у меня с этим.

Если блоку с опциями задать фиксированную высоту

element.style {
  1. text-aligncenter;
  2. margin-top3px;
  3. height45px;
}
то нижние опции отображаются и налазят на название товара.

post-678806-0-02441800-1438972776_thumb.jpg

Надіслати
Поділитися на інших сайтах


.product-thumb {
min-height: 445px;
}
.product-thumb .btn-group {
position: absolute;
bottom:8%;
left:18%;
}

.product-layout  .caption .rating{
text-align: center;
}
.product-layout  .caption .price{
text-align:center;
}
Надіслати
Поділитися на інших сайтах

А это для выравнивания всех товаров? правильно я понимаю?

 

Вы уж извините, но в мае этого года я даже не догадывался про существования php, css и других английских наборов букв. а потом мой воспаленный мозг решил переделать сайт....  

Надіслати
Поділитися на інших сайтах


Я там дописал под спойлером.Без фиксированной минимальной ширины блоки при наличии нового элемента будут плясать по всему магазину.А я там дописал кнопки пониже и цена-отзывы отцентрованы.

Надіслати
Поділитися на інших сайтах

продолжаем занятный квест по изучению OC :)

 

есть такая хотелка: выводить названия цвета ( красный/синий и т.д) при нажатии соответствующей опции.

То есть, юзер нажал на опцию и в карточке товара отобразилось: Модель А, цвет: зеленый.

Думал реализовать так:

файл product.tpl /catalog/view/theme/coloring/template/product

<?php echo $option['name']; ?> <div class="inline-info"> <b> <?php echo $option_value['name']; ?> </div>

file product.php /system/modification/catalog/controller/product ( у меня шаблон работает через modification)

 

$product_option_value_data[] = array(
'product_option_value_id' => $option_value['product_option_value_id'],
'option_value_id' => $option_value['option_value_id'],
'name' => $option_value['name'],
'image' => $this->model_tool_image->resize($option_value['image'], 50, 50),
'price' => $price,
'price_prefix' => $option_value['price_prefix']
);

но получаю пустое поле. и ошибку

 

2015-08-12 17:27:38 - PHP Notice:  Undefined variable: option_value in /home/busine32/businessbag.com.ua/xds/vqmod/vqcache/vq2-catalog_view_theme_coloring_template_product_product.tpl on line 27
2015-08-12 17:27:38 - PHP Notice:  Undefined variable: option_value in /home/busine32/businessbag.com.ua/xds/vqmod/vqcache/vq2-catalog_view_theme_coloring_template_product_product.tpl on line 316
2015-08-12 17:38:35 - PHP Notice:  Undefined variable: option_value in /home/busine32/businessbag.com.ua/xds/vqmod/vqcache/vq2-catalog_view_theme_coloring_template_product_product.tpl on line 316
 
что я опять пропустил? :)

 

Надіслати
Поділитися на інших сайтах


  • 5 years later...

Здравствуйте, подскажите пожалуйста как в modx evo версии 1.2.1. Есть прайс списком из 1с, хочется сделать так, чтобы еще и каждый товар из прайса был отдельной карточкой. Как такое реализовать? Так реализовано у кирелис: вот каталог списком - https://www.kirelis.ru/catalog/pemni-klinovye/z/page/2/ при клике на товар выходит его карточка - https://www.kirelis.ru/catalog/pemni-klinovye/z/id_34691/

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.