打开车版本2,产品数量提交的分类视图(Open Cart version 2, Quantity f

2019-10-22 00:03发布

我与Opencart的2.0工作,我想获得的数量字段从分类页面以及该产品的网页。 我设法与1.5版本之前做到这一点很好,但因为代码已经改变了很多。 随着Opencart的V 1.5我使用Siven Sadiyan提供的解决方案( http://siven76.com/2013/04/29/opencart-add-a-quantity-box-on-product-list-pages/ )谁的解决方案曾精美,只是需要一个调整来common.js和category.tpl,我能够将其应用到各种其他页面也如搜索结果和模块。 我一直无法至今对此进行修改Opencart的2.0以上版本的代码和条件发生了变化。 我尝试了好几种扩展,但似乎有一点的工作方案,在除了硬的那一刻编码,然后手动,到目前为止,它不适合我顺利! 所有我找的是功能,我不担心的布局。

因为该解决方案到以前的版本Opencart的的common.js文件已更改,我知道它涉及到下面的代码(PS,滚动到顶部,从下面的代码删除,但只有一条线已经从原来的改变):

 // Cart add remove functions
 var cart = {
     'add': function(product_id, quantity) {
         jQuery.ajax({
             url: 'index.php?option=com_mijoshop&route=checkout/cart/add&format=raw&tmpl=component',
             type: 'post',
             data: 'product_id=' + product_id + '&quantity=' + (typeof(quantity) != 'undefined' ? quantity : 1),
             dataType: 'json',
             beforeSend: function() {
                 jQuery('#cart > button').button('loading');
             },
             success: function(json) {
                 jQuery('.alert, .text-danger').remove();

                jQuery('#cart > button').button('reset');

                if (json['redirect']) {
                    location = json['redirect'];
                }

                if (json['success']) {
                    jQuery('#content_oc').parent().before('<div class="shopnotification"><i class="fa fa-check-circle"></i> ' + json['success'] + '<button      type="button" class="close" data-dismiss="alert">&times;</button></div>');

                    jQuery('#cart-total,#cart > a > span').html(json['total']);

                    jQuery('.shopnotification').fadeIn(1000).delay(3000).fadeOut(1500);

                    jQuery('#cart > ul,#module_cart > ul').load('index.php?option=com_mijoshop&route=common/cart/info&format=raw&tmpl=component ul li');
                }
             }
         });
     },

第二个文件是category.tpl代码(我相信当成功更改可以在其他领域被改变):

 <div class="button-group">
     <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button>
     <button type="button" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-heart"></i></button>
     <button type="button" data-toggle="tooltip" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-exchange"></i></button>
 </div>

任何人只要有一个解决方案,将不胜感激! 我会后回来,如果我得到任何运气自己,但我头上长划伤后是低的咖啡!

Answer 1:

谢谢Xyph3r在Opencart的论坛,您的旧后重1.5版本给我的线索到伟大工程Opencart的版本2的替代品! 链接到我的线索: http://forum.opencart.com/viewtopic.php?f=20&t=99990对于其他人,这是我做的,它可以被改编成vqmod或ocmod所以更新不覆盖此但这里有最基础的:Category.tpl:找到这一行:

 <div class="button-group">
     <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button>

此更改为:

 <input type="text" value="1" size="2" class="item-<?php echo $product['product_id']; ?>" />
 <div class="button-group">
     <button type="button" value="<?php echo $button_cart; ?>" onclick="addQtyToCart('<?php echo $product['product_id']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button>

在该文件的底部,添加以下行回声页脚所以文件的末尾看起来像在此之前:

 <script type="text/javascript"><!--
 function addQtyToCart(product_id) {
     var qty = $('.item-' + product_id).val();
     if ((parseFloat(qty) != parseInt(qty)) || isNaN(qty)) {
         qty = 1;
     }
     cart.add(product_id, qty);
 }
 //--></script> 
 <?php echo $footer; ?>

希望这可以帮助别人。 注意:这只是上面的现有的按钮数量字段添加到购物车,愿望清单和比较,也不会看起来很漂亮,这样一切都归结到你和你的风格(主题)!



文章来源: Open Cart version 2, Quantity filed on Category View