Jump to content
Sign in to follow this  
webprofiler

Количество товара с +/- в списке товаров

Recommended Posts

находил много тем по добавлению возможности ввода количества товара в списке товаров в категории, а вот как сделать через +/- так и не нашел. у меня на сайте, если зайти в товар есть такая возможность (можно +/- добавлять/убавлять количество покупаемого товара). так вот, очень хочется добавить такую возможность из списка товаров

понимаю, что к редактированию нужны файлы: category.php, category.tpl, common.js

но я как ни пробывал совместить строки по мануалам с форума - +/- у меня никак не появлялся. переменную minimum добавлял. вообщем ничего без вашей помощи понял у меня не выйдет

 

скидываю файлики 

в файле 2.jpg - это как сейчас у меня в товаре и как хотелось бы видеть в списке товаров

файл 3.jpg - это сейчас простая кнопка купить 

 

вот кусок кода, который как я понял отвечает за вывод +/- в товаре

 
<?php } ?>
      <div class="cart">
        <div>
          <input type="text" name="quantity" size="2" value="<?php echo $minimum; ?>" />
          <input type="hidden" name="product_id" size="2" value="<?php echo $product_id; ?>" />
          <input type="button" value="<?php echo $button_cart; ?>" id="button-cart" class="button" />
          <span class="links"><a onclick="addToWishList('<?php echo $product_id; ?>');"><?php echo $button_wishlist; ?></a><br />
            <a onclick="addToCompare('<?php echo $product_id; ?>');"><?php echo $button_compare; ?></a></span>
        </div>
        <?php if ($minimum > 1) { ?>
        <div class="minimum"><?php echo $text_minimum; ?></div>
        <?php } ?>
      </div>
      <?php if ($review_status) { ?>
      <div class="review">
        <div><img src="catalog/view/theme/default2/image/stars-<?php echo $rating; ?>.png" alt="<?php echo $reviews; ?>" /><a onclick="$('a[href=\'#tab-review\']').trigger('click');"><?php echo $reviews; ?></a></div>
        <div class="share">
<!-- AddThis Button BEGIN -->
<script type="text/javascript">(function() {
if (window.pluso)if (typeof window.pluso.start == "function") return;
if (window.ifpluso==undefined) { window.ifpluso = 1;
var d = document, s = d.createElement('script'), g = 'getElementsByTagName';
s.type = 'text/javascript'; s.charset='UTF-8'; s.async = true;
s.src = ('https:' == window.location.protocol ? 'https' : 'http')  + '://share.pluso.ru/pluso-like.js';
var h=d[g]('body')[0];
h.appendChild(s);
}})();</script>
<div class="pluso" data-background="transparent" data-options="small,square,line,horizontal,nocounter,theme=04" data-services="vkontakte,odnoklassniki,facebook,twitter,google,moimir,email,print"></div>
          <!-- AddThis Button END --> 
        </div>
      </div>
      <?php } ?>
    </div>
  </div>
  <div id="tabs" class="htabs"><a href="#tab-description"><?php echo $tab_description; ?></a>
    <?php if ($attribute_groups) { ?>
    <a href="#tab-attribute"><?php echo $tab_attribute; ?></a>
    <?php } ?>
    <?php if ($review_status) { ?>
    <a href="#tab-review"><?php echo $tab_review; ?></a>
    <?php } ?>
    <?php if ($products) { ?>
    <a href="#tab-related"><?php echo $tab_related; ?> (<?php echo count($products); ?>)</a>
    <?php } ?>
  </div>
  <div id="tab-description" class="tab-content"><?php echo $description; ?></div>
  <?php if ($attribute_groups) { ?>
  <div id="tab-attribute" class="tab-content">
    <table class="attribute">
      <?php foreach ($attribute_groups as $attribute_group) { ?>
      <thead>
        <tr>
          <td colspan="2"><?php echo $attribute_group['name']; ?></td>
        </tr>
      </thead>
      <tbody>
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
        <tr>
          <td><?php echo $attribute['name']; ?></td>
          <td><?php echo $attribute['text']; ?></td>
        </tr>
        <?php } ?>
      </tbody>
      <?php } ?>
    </table>
  </div>

 

 
 
а вот кусок кода в файле category.tpl
как правильно скомпоновать ума не приложу
 
   
 <?php } ?>
      
      <div class="rating"><img src="catalog/view/theme/default2/image/stars-<?php echo $product['rating']; ?>.png" alt="<?php echo $product['reviews']; ?>" /></div>
      
      <div class="cart">
        <input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" />
      </div>
      <div class="wishlist"><a onclick="addToWishList('<?php echo $product['product_id']; ?>');"><?php echo $button_wishlist; ?></a></div>
      <div class="compare"><a onclick="addToCompare('<?php echo $product['product_id']; ?>');"><?php echo $button_compare; ?></a></div>
    </div>
    <?php } ?>
 
помогите

post-699532-0-59463200-1442254917_thumb.jpg

post-699532-0-85324100-1442254917_thumb.jpg

Share this post


Link to post
Share on other sites

может готовый взять?

 

или посмотреть на его примере, для понимания

Share this post


Link to post
Share on other sites

да нет, хотелось бы понять что какой код взять с файла product и вставить в файл category.  Вроде бы несложно должно быть так как межанизм то уже реализован, только в другом блоке. Подскажите что к чему

Share this post


Link to post
Share on other sites

что мешает изучить уже готовое решение?

Share this post


Link to post
Share on other sites

помогите, с заменой кода:

код в product.tpl

      <div class="cart">
        <div>
          <input type="text" name="quantity" size="2" value="<?php echo $minimum; ?>" />
          <input type="hidden" name="product_id" size="2" value="<?php echo $product_id; ?>" />
          <input type="button" value="<?php echo $button_cart; ?>" id="button-cart" class="button" />
          <span class="links"><a onclick="addToWishList('<?php echo $product_id; ?>');"><?php echo $button_wishlist; ?></a><br />
            <a onclick="addToCompare('<?php echo $product_id; ?>');"><?php echo $button_compare; ?></a></span>
        </div>
        <?php if ($minimum > 1) { ?>
        <div class="minimum"><?php echo $text_minimum; ?></div>
        <?php } ?>
      </div>
 
вот код в category.tpl
 
      <div class="cart">
        <input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" />
      </div>
      <div class="wishlist"><a onclick="addToWishList('<?php echo $product['product_id']; ?>');"><?php echo $button_wishlist; ?></a></div>
      <div class="compare"><a onclick="addToCompare('<?php echo $product['product_id']; ?>');"><?php echo $button_compare; ?></a></div>

вот что предлагается сделать из файла quantity_control_for_OC_v1.5.xml

 

заменить строку

<input type="button" value="<?php echo $button_cart; ?>" onclick

на 

<div class="quantity_div">
<span class="minus"><</span>
<input type="text" name="quantity" class="quantity_input" size="2" value="<?php echo $product['minimum']; ?>" data-maximum="<?php echo $product['quantity']; ?>" /> 
<span class="plus">></span>
</div>
<input type="button" value="<?php echo $button_cart; ?>" onclick
 
может немного подправить код замены из моего файла product.tpl?
Edited by Tom

Share this post


Link to post
Share on other sites

такую штуку в category добавил

<script type="text/javascript">
$(document).ready(function() {
$(".image-additional").addClass('owl-carousel').addClass('owl-theme').owlCarousel({
responsiveBaseWidth: ".image-additional",
itemsCustom: [[400, 4]]
});


$('.cart input[type="text"]').before('<div class="plus-minus"><span class="plus"></span><span class="minus"></span></div>');
    $('.cart .minus').click(function () {
        var $input = $('.cart input[type="text"]');
        var count = parseInt($input.val()) - 1;
        count = count < 1 ? 1 : count;
        $input.val(count);
        $input.change();
        return false;
    });
    $('.cart .plus').click(function () {
        var $input = $('.cart input[type="text"]');
        $input.val(parseInt($input.val()) + 1);
        $input.change();
        return false;
        });
});
</script>
Edited by Tom

Share this post


Link to post
Share on other sites

при таком коде 

 

      <div class="cart">
          <input type="text" name="quantity" size="2" value="<?php echo $minimum; ?>" />
          <input type="hidden" name="product_id" size="2" value="<?php echo $product_id; ?>" />
          <input type="button" value="<?php echo $button_cart; ?>" id="button-cart" class="button" />
      </div>
      <div class="wishlist"><a onclick="addToWishList('<?php echo $product['product_id']; ?>');"><?php echo $button_wishlist; ?></a></div>
      <div class="compare"><a onclick="addToCompare('<?php echo $product['product_id']; ?>');"><?php echo $button_compare; ?></a></div>
   <?php if ($minimum > 1) { ?>
        <div class="minimum"><?php echo $text_minimum; ?></div>
        <?php } ?>
 
получается чето не то (скрин внизу)
 
и ошибка
<b>Notice</b>: Undefined variable: minimum in <b>/home/balea/balea.od.ua/www/catalog/view/theme/default2/template/product/category.tpl</b> on line <b>81</b>
 
хотя переменную добавлял как описно в файле quantity_control_for_OC_v1.5.xml

post-699532-0-54484500-1442305088_thumb.jpg

Edited by Tom

Share this post


Link to post
Share on other sites

Ещё одно сообщение  в котором код будет не обрамлён в код,писаря в РО,топик в мусорку.

Share this post


Link to post
Share on other sites

виноват, согласен

а помочь кто-нибудь сможет?

а не журить за неправильное обрамление кода

Edited by webprofiler

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.