0

问题是我想在我的网站上实现以下功能: 在帐户设置 - 订单详细信息中,我想添加一个按钮,将来自该订单的所有产品添加到购物车。现在,我几乎明白了如何在 flypage 和浏览页面上实现添加到购物车功能。我真的不知道如何将多个项目传递给订单详细信息页面上的添加到购物车功能,以及如果项目缺货或未发布,ps_cart 如何处理它。这是浏览页面中添加到购物车表单的代码:

<form action="<?php echo $mm_action_url ?>index.php" method="post" name="addtocart" id="addtocart<?php echo $i ?>" class="addtocart_form" <?php if( $this->get_cfg( 'useAjaxCartActions', 1 ) && !$notify ) { echo 'onsubmit="handleAddToCart( this.id );return false;"'; } ?>>
    <?php echo $ps_product_attribute->show_quantity_box($product_id,$product_id); ?><br />
    <input type="submit" class="<?php echo $button_cls ?>" value="<?php echo $button_lbl    ?>" title="<?php echo $button_lbl ?>" />
    <input type="hidden" name="category_id" value="<?php echo  @$_REQUEST['category_id'] ?>" />
    <input type="hidden" name="product_id" value="<?php echo $product_id ?>" />
    <input type="hidden" name="prod_id[]" value="<?php echo $product_id ?>" />
    <input type="hidden" name="page" value="shop.cart" />
    <input type="hidden" name="func" value="cartadd" />
    <input type="hidden" name="Itemid" value="<?php echo $sess->getShopItemid() ?>" />
    <input type="hidden" name="option" value="com_virtuemart" />
    <input type="hidden" name="set_price[]" value="" />
    <input type="hidden" name="adjust_price[]" value="" />
    <input type="hidden" name="master_product[]" value="" />
</form>

我想知道是否需要将所有这些都传递给 ps_cart?我不期望你们中的任何人都准备好扩展,如果您能指出我正确的方向,那就太好了。谢谢!

编辑:我能够设置添加到购物车按钮,现在我必须传递所需的数据。如果它可以与至少一个项目一起工作,那就太好了,然后我会开始考虑如何更改代码。

编辑 2:我能够使它完美地适用于一种产品。但是如何将多个产品 ID 及其数量传递给添加到购物车功能?

4

1 回答 1

1

ps_cart 中的当前代码已经有一个循环来遍历发送到购物车的多个产品 ID。从那里的代码来看,我会简单地将您要添加到购物车的所有产品 ID 放入 prod_id 数组中。您会注意到 prod_id、set_price、adjust_price 和 master_product 都是表单中的数组。我的猜测是,您需要为要添加的每个产品输入这些值,其余的将由 ps_cart 完成。

于 2011-03-26T13:07:17.083 回答