2015-08-13 3 views
0

Я работаю над проектом в cs-cart. cs-cart использует механизм шаблона smarty PHP, и я знаю, что он работает на сервере. Теперь, для нужд веб-сайта, я хотел бы рассчитать внутри продукта (ковры) в зависимости от его размера! До сих пор я вставлял два текста типа ввода. Пользователь вставляет размер ковра (ширина-высота) и рассчитать стоимость его, используя JavaScript:cs-cart отправить пользовательскую цену в корзину

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; 
} 

Теперь я хочу эту цену, чтобы отправить его на кнопку «Добавить в корзину». Любые мысли, рекомендации или помощь были бы оценены! спасибо

ответ

0

Вы должны использовать крючок, в то время как добавляется в корзину. CS-Cart сохраняет содержимое корзины в массиве $_SESSION['cart']. Связанные с продуктом вещи хранятся в массиве $_SESSION['cart']['products'].

Функция fn_add_product_to_cart() используется для добавления любого товара в корзину по ядру. В нем много крючков, вы можете подключить: pre_add_to_cart, add_product_to_cart_check_price, add_to_cart, post_add_to_cart. Вы можете прочитать больше о крючках здесь: http://docs.cs-cart.com/4.2.x/addons/hooking/php_hooks.html Вы можете изучить параметры крюка здесь: http://www.cs-cart.com/api

+0

ОК .. Я вижу вашу точку зрения, но мне нужна дополнительная помощь, пожалуйста! Я не очень хорошо знаком с надстройками, хотя я создал простой. Я работаю внутри файла default_template.tpl (этот файл относится к шаблону продуктов). По вашим ссылкам: Я создал каталог app/addons/carpets В этом каталоге я добавил следующие файлы: –

+0

addon.xml ковры 1,0 ковры ковры цена init.php func.php Что я должен изменить, так что я могу отправить мою новую цену, рассчитанную с помощью javscript? большое спасибо –

0

Вы можете добавить следующий скрытый вход в шаблон:

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

, то просто добавьте следующую строку в вашем Javascript код:

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

в результате расчетные данные будут представлены в массиве $ product_data если pre_add_to_cart крюк используется.

Смежные вопросы