поставивл модуль Smart Checkout вечная загрузка при изменении опции количества или покупке в чем может быть проблема вот сайт
Никакой вечной загрузки я не вижу. Количество вообще меняется без проблем, а при попытке оформить заказ, с сервера приходит ответ с ошибкой о не выбранных обязательных опциях. То есть, у вас опции со страницы не подхватываются при оформлении заказа через этот модуль. Возможно, вы что-то не так настроили или модуль не полностью смог установиться. Посмотрите журнал ошибок vQmod, да и обычный журнал тоже.
работает может подскажете, как сделать, чтобы кнопку выводило только в product-o.tpl я создал отдельный вывод товара для некоторых товаров вот вывод PHP: <?xml version="1.0" encoding="UTF-8"?><!--@category : OpenCart@module : Smart Checkout@author : OCdevWizard <[email protected]>@copyright : Copyright (c) 2014, OCdevWizard@license : http://license.ocdevwizard.com/Licensing_Policy.pdf--><modification> <id>Smart Checkout</id> <version>1.5.6.x</version> <vqmver required="true">2.4.0</vqmver> <author>[email protected]</author> <file path="catalog/controller/common/" name="header.php,footer.php"> <operation error="skip"> <search position="after"><![CDATA[protected function index() {]]></search> <add><![CDATA[ // start: OCdevWizard SMCH $this->data['smch_form_data'] = (array) $this->config->get( 'ocdev_smart_checkout_form_data' ); $this->data['smch_store_id'] = (int) $this->config->get( 'config_store_id' ); $this->data['smch_customer_group_id'] = ( $this->customer->isLogged() ) ? (int) $this->customer->getCustomerGroupId() : (int) $this->config->get( 'config_customer_group_id' ); // end: OCdevWizard SMCH ]]></add> </operation> </file> <file path="catalog/model/shipping/" name="citylink.php,weight.php"> <operation error="skip"> <search position="replace"><![CDATA[$weight = $this->cart->getWeight();]]></search> <add><![CDATA[ // start: OCdevWizard SMCH if ( isset( $this->session->data['smch_product_weight'] ) ) { $weight = $this->session->data['smch_product_weight']; } else { $weight = $this->cart->getWeight(); } // end: OCdevWizard SMCH ]]></add> </operation> </file> <file pname="catalog/model/shipping/free.php"> <operation error="skip"> <search position="replace"><![CDATA[if ($this->cart->getSubTotal() < $this->config->get('free_total')) {]]></search> <add><![CDATA[ // start: OCdevWizard SMCH if ( isset( $this->session->data['smch_product_sut_total'] ) ) { $smch_sub_total = $this->session->data['smch_product_sut_total']; } else { $smch_sub_total = $this->cart->getSubTotal(); } if ($smch_sub_total < $this->config->get('free_total')) { // end: OCdevWizard SMCH ]]></add> </operation> </file> <file name="catalog/view/theme/default/template/common/header.tpl"> <operation error="skip"> <search position="before"><![CDATA[</head>]]></search> <add><![CDATA[ <?php $customer_groups = isset( $smch_form_data['customer_groups'] ) ? $smch_form_data['customer_groups'] : array(); $stores = isset( $smch_form_data['stores'] ) ? $smch_form_data['stores'] : array(); ?> <?php if ( isset( $smch_form_data['activate'] ) && !in_array( $smch_customer_group_id, $customer_groups ) && !in_array( $smch_store_id, $stores ) ) { ?> <!-- <?php echo $smch_form_data['front_module_name'] . ' : ' . $smch_form_data['front_module_version']; ?> --> <link rel="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/ocdev_smart_checkout/stylesheet.css?v=<?php echo $smch_form_data['front_module_version']; ?>" /> <script type="text/javascript" src="catalog/view/javascript/ocdev_smart_checkout/ocdev_smart_checkout.js?v=<?php echo $smch_form_data['front_module_version']; ?>"></script> <script type="text/javascript" src="catalog/view/javascript/ocdev_smart_checkout/inputmask.js"></script> <script type="text/javascript" src="catalog/view/javascript/ocdev_smart_checkout/jquery.placeholder.js"></script> <?php echo html_entity_decode( $smch_form_data['google_analytics_script'], ENT_QUOTES, 'UTF-8' ); ?> <!-- <?php echo $smch_form_data['front_module_name'] . ' : ' . $smch_form_data['front_module_version']; ?> --> <?php } ?> ]]></add> </operation> </file> <file name="catalog/view/theme/default/template/common/footer.tpl"> <operation error="skip"> <search position="before"><![CDATA[</body>]]></search> <add><![CDATA[ <?php $customer_groups = isset( $smch_form_data['customer_groups'] ) ? $smch_form_data['customer_groups'] : array(); $stores = isset( $smch_form_data['stores'] ) ? $smch_form_data['stores'] : array(); ?> <?php if ( isset( $smch_form_data['activate'] ) && !in_array( $smch_customer_group_id, $customer_groups ) && !in_array( $smch_store_id, $stores ) ) { ?> <!-- <?php echo $smch_form_data['front_module_name'] . ' : ' . $smch_form_data['front_module_version']; ?> --> <script type="text/javascript"> $(function() { $('body') .after("<input name='smch_product_ids' value='' type='hidden' style='display:none;' />"); var smch_product_ids_array = []; $.each($("[onclick^='<?php echo $smch_form_data['add_function_selector']; ?>']"), function() { var product_id = $(this).attr('onclick').match(/[0-9]+/), smch_product_id = smch_product_ids_array; smch_product_ids_array.push( product_id ); $("input[name='smch_product_ids']") .attr( 'value', smch_product_id ); }); var urls = ""; urls += "index.php?route=module/ocdev_smart_checkout/getProducts"; <?php if ( isset( $this->request->get['route'] ) ) { ?> urls += "&routing=<?php echo ( isset( $this->request->get['route'] ) ) ? $this->request->get['route'] : ''; ?>"; <?php } ?> <?php if ( isset( $this->request->get['product_id'] ) ) { ?> urls += "&product_id=<?php echo ( isset( $this->request->get['product_id'] ) ) ? $this->request->get['product_id'] : ''; ?>"; <?php } ?> urls += "&smch_product_ids=" + $("input[name='smch_product_ids']").val(); $.ajax({ type: 'post', url: urls, dataType: 'json', success: function(json) { $.each( json['products'], function(i,value) { $("[onclick^='"+json['add_function_selector']+"']").each(function() { var product_id = $(this).attr('onclick').match(/[0-9]+/); if ( product_id == value ) { $(this) .before( "<button class='smch_call_button'>" + json['text_call_button'] + "</button>" ) .prev() .attr( 'onclick', 'getOCwizardModal_smch(\'' + $(this).attr('onclick').match(/[0-9]+/) + '\')' ); } }); }); $.each( json['product'], function(i,value) { var product_id_in_page = $("input[name='product_id']").val(); if ( product_id_in_page == value ) { $('#'+json['add_id_selector']) .before( "<button class='smch_call_button'>" + json['text_call_button'] + "</button>" ) .prev() .attr( 'onclick', 'getOCwizardModal_smch(\'' + product_id_in_page + '\')' ); } }); } }); }); </script> <!-- <?php echo $smch_form_data['front_module_name'] . ' : ' . $smch_form_data['front_module_version']; ?> --> <?php } ?> ]]></add> </operation> </file></modification>
В этой инструкции есть js код, который добавляется в /catalog/view/theme/default/template/common/footer.tpl и добавляет затем кнопку на страницу: Код: <script type="text/javascript"> $(function() { $('body') .after("<input name='smch_product_ids' value='' type='hidden' style='display:none;' />"); var smch_product_ids_array = []; $.each($("[onclick^='<?php echo $smch_form_data['add_function_selector']; ?>']"), function() { var product_id = $(this).attr('onclick').match(/[0-9]+/), smch_product_id = smch_product_ids_array; smch_product_ids_array.push( product_id ); $("input[name='smch_product_ids']") .attr( 'value', smch_product_id ); }); var urls = ""; urls += "index.php?route=module/ocdev_smart_checkout/getProducts"; <?php if ( isset( $this->request->get['route'] ) ) { ?> urls += "&routing=<?php echo ( isset( $this->request->get['route'] ) ) ? $this->request->get['route'] : ''; ?>"; <?php } ?> <?php if ( isset( $this->request->get['product_id'] ) ) { ?> urls += "&product_id=<?php echo ( isset( $this->request->get['product_id'] ) ) ? $this->request->get['product_id'] : ''; ?>"; <?php } ?> urls += "&smch_product_ids=" + $("input[name='smch_product_ids']").val(); $.ajax({ type: 'post', url: urls, dataType: 'json', success: function(json) { $.each( json['products'], function(i,value) { $("[onclick^='"+json['add_function_selector']+"']").each(function() { var product_id = $(this).attr('onclick').match(/[0-9]+/); if ( product_id == value ) { $(this) .before( "<button class='smch_call_button'>" + json['text_call_button'] + "</button>" ) .prev() .attr( 'onclick', 'getOCwizardModal_smch(\'' + $(this).attr('onclick').match(/[0-9]+/) + '\')' ); } }); }); $.each( json['product'], function(i,value) { var product_id_in_page = $("input[name='product_id']").val(); if ( product_id_in_page == value ) { $('#'+json['add_id_selector']) .before( "<button class='smch_call_button'>" + json['text_call_button'] + "</button>" ) .prev() .attr( 'onclick', 'getOCwizardModal_smch(\'' + product_id_in_page + '\')' ); } }); } }); }); </script> Уберите этот код из инструкции и впишите внизу вашего шаблона страницы товара.
Ребята подскажите как в нем отключить клик по корзине в шапке. что бы при клике по корзине в шапке работала стандартная функция откривания корзины а не всплывающее окно даноого модуля!?