繁体   English   中英

cs-cart将自定义值发送到购物车

[英]cs-cart send custom value to add-to-cart

我正在使用cs-cart进行项目。 cs-cart使用的是Smarty PHP模板引擎,我知道它正在服务器上运行。 现在,根据网站的需求,我想根据价格的大小来计算产品(纸箱)的价格! 到目前为止,我已经插入了两个输入类型的文本。 用户插入地毯的尺寸(宽度-高度),然后使用javascript计算价格:

function func() {
    var metro_timi = 10;
    var x = document.getElementById('mikos');
    var y = document.getElementById('platos');
    var timi = x.value * y.value * metro_timi;
    alert("Η τιμή του χαλιού σας είναι: " + timi + "€");

    document.getElementById("price_metro").value = timi;
}

现在,我希望这个价格发送到按钮“添加到购物车”。 任何想法,指导或帮助将不胜感激! 谢谢

在添加到购物车过程中,您必须使用挂钩。 CS-Cart将购物车内容存储在$_SESSION['cart']数组中。 与产品相关的事物存储在$_SESSION['cart']['products']数组中。

fn_add_product_to_cart()函数用于按核心将所有产品添加到购物车。 它有很多钩子,您可以连接: pre_add_to_cartadd_product_to_cart_check_priceadd_to_cartpost_add_to_cart 您可以在此处了解有关钩子的更多信息: http : //docs.cs-cart.com/4.2.x/addons/hooking/php_hooks.html您可以在此处探索钩子参数: http : //www.cs-cart.com / api

您可以将以下隐藏的输入添加到模板中:

 <input type="hidden" name="product_data[{$obj_id}][calculated_price]" value="" id="calculated_price_{$obj_id}" />

然后只需将以下行添加到您的javascript代码中即可:

$('#calculated_price_{$obj_id}').val(timi);

结果,如果使用pre_add_to_cart挂钩,则计算出的数据将显示在$ product_data数组中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM