Jump to content
Sign in to follow this  
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 } ?>

но как?

 

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

 

 

Share this post


Link to post
Share on other sites


.options .radio{
    display: inline-block;
}

Share this post


Link to post
Share on other sites

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

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

Edited by happyvadik

Share this post


Link to post
Share on other sites

Продолжим

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

Спасибо

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

То есть сами опции в категории уже выведены???

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Edited by happyvadik

Share this post


Link to post
Share on other sites

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

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

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

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

Share this post


Link to post
Share on other sites
 overflow:hidden;

так к примеру.

Share this post


Link to post
Share on other sites

.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;
}

Share this post


Link to post
Share on other sites

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

 

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Красота.

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

Куда отправлять прибыль с первого заказа с нового сайта я уже знаю :)

Share this post


Link to post
Share on other sites

продолжаем занятный квест по изучению 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
 
что я опять пропустил? :)

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.