0

我正在尝试将产品直接添加到来自外部页面的购物车中。我有一个外部页面,我有一个按钮。

当我们单击该按钮时,产品详细信息应该会进入 drugmart 中的购物车,并且它不应该影响 drugmart 添加到购物车的功能。

我应该怎么做才能使它成为可能。如果你知道答案帮助我。提前致谢。

4

1 回答 1

0

好问题,我已经在我的一个自定义组件页面中实现了这个概念。您可以在任何地方使用它,只需提供产品 ID 和数量。以下是您必须在页面上实现的代码:

不要忘记更改以下 div 中的变量:

数量 = "1"将 1 替换为您的数量

"$res->virtuemart_product_id"将其替换为您的产品 ID

将以下 div 放在您的页面中:

<div class="addtocart-bar">
  <span class="addtocart-button" style="float:right !important;"> 
    <input type="submit" url='<?php echo JRoute::_("index.php?option=com_virtuemart&nosef=1&view=cart&task=addJS&format=json&lang=en&quantity=1&quantity%5B%5D=1&view=cart&virtuemart_product_id%5B%5D=$res->virtuemart_product_id&option=com_virtuemart"); ?>' title="Add to Cart" value="Add to Cart" id="btn_addtocart" class="bttn right" name="addtocart">
  </span>
<div class="clear"></div>
</div>

在页面顶部,您必须添加以下代码:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
jQuery(document).ready(function(){

    jQuery("[name=addtocart]").click(function(e){

        e.preventDefault();

        var url = $(this).attr('url');

            jQuery.ajax({
                type:"POST",
                url: url,
                async:false,
                data:{'p_id' : 1 },
                success: function(html){
                    var msg ="<div id='fancybox-content'><div style='width:auto;height:auto;overflow: auto;position:relative;'><div class='popUp_Box'><p>This item has been added to your shopping cart.</p><a class='continue bttn rmv_brdr btn_fix' href='index.php?option=com_virtuemart&view=categories&virtuemart_category_id=0'>Keep Shopping</a><?php if($user->id){ ?><a href='index.php?option=com_virtuemart&view=cart' class='showcart floatright bttn btn_fix'>Check Out</a><?php }else{ ?><a href='index.php?option=com_users&view=login&checkout=1' class='showcart floatright bttn btn_fix'>Check Out</a><?php } ?></div></div></div><a id='fancybox-close' style='display: block;'></a>";

                    jQuery.fancybox({
                                "titlePosition" :   "inside",
                                "transitionIn"  :   "elastic",
                                "transitionOut" :   "elastic",
                                "type"          :   "html",
                                "autoCenter"    :   true,
                                "closeBtn"      :   true,
                                "closeClick"    :   false,
                                "content"       :   msg
                            }
                        );

                }
            });
    });

    });
</script>

如果您在根文件夹中保存了 fancybox 插件,上述脚本将起作用,为此请从“ http://fancyapps.com/fancybox/#license ”下载 fancybox 插件。我使用了fancybox,因为当订单添加到购物车时,您的订单确认将出现在fancybox 中,看起来很棒。我还附上了一张图片,以显示您必须在哪里添加 fancybox 插件文件夹。我希望这会对你有很大帮助。

将fancybox插件文件夹放在这个位置。

问候

莫希特:)

于 2013-10-24T06:04:29.757 回答