Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

mpn2005

Users
  
  • Posts

    3,222
  • Joined

  • Last visited

Everything posted by mpn2005

  1. Обновление для OC2: v3.0.0 (06.04.2016) - Переписана и подчищена от старых хвостов. +Прохождение валидации html.
  2. В этой строке в начале стоит // - это значит что эта строка не будет выполняться в javasсript. Но этот php код <?php echo $zone_id; ?> будет выполнен ещё во время гененрирования страницы. Что и породит ошибку о ненайденной переменной - $zone_id.
  3. Немного не понятно. У васв карточке товарв выводится в $ или вы хотите вывести в карточке товара в $? Киньте ссылку на сайт в личку.
  4. Судя по коду строка закомментирована. Но немного не верно. Надо так: <?php /* if (json['zone'][i]['zone_id'] == '<?php echo $zone_id; ?>') { */ ?> Чтобы не выполнялся код php.
  5. Сомнительный повод писать в и так длинную ветку. С такими доводами можете начинать писать во все ветки подряд. Т.к. тут не я один программист.
  6. Так сложно что-то сказать. Скорее всего нестыковка с используемой темой. Скиньте в личку доступ на ФТП и в админку. Помогу устранить ошибки.
  7. Ну зачем писать в ветку поддержки другого модуля. Данный вопрос и близко не пересекается с модулем обновления цены.
  8. По ссылке какой-то МойМТС. По картинке по любому сложно что-то сказать. Киньте ссылку на страницу товара в личку.
  9. Так умеет делать модуль simple - простой заказ оформление. https://opencartforum.com/files/file/324-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C-simple-%D1%83%D0%BF%D1%80%D0%BE%D1%89%D0%B5%D0%BD%D0%BD%D0%B0%D1%8F-%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F-%D0%B8-%D0%B7%D0%B0%D0%BA%D0%B0%D0%B7/
  10. Этот id не влияет на индексацию и не относится к микроразметке. Это обычный html id элемента. Чтобы цена не индексировалась, заверните всё ненужное в тег noindex. https://ru.wikipedia.org/wiki/Noindex
  11. Со скриптом тут тоже всё по другому. В шаблоне category.tpl. Находим: <?php foreach ($products as $product) { ?> <div> И приводим к такому виду: <?php foreach ($products as $product) { ?> <div id="product-<?php echo $product['product_id']; ?>"> Добавлен id для блока товара, чтобы мы могли потом к нему получить доступ. Потом в файле catalog/view/javascript/common.js После строки: $('#cart-total').html(json['total']); Добавляем: $('#product-' + product_id + ' .cart').html('Товар добавлен в корзину!'); P.S.: В некоторых шаблонах используется свой файл common.js и он может находится по другому пути.
  12. В категории нет product_info, т.к. там не один товар. Данные по товарам содержатся в массиве, поэтому там необходимо поступать совсем по другому. В файле catalog/controller/product/category.php После строки: $this->data['products'] = array(); Добавляем: $cart_product_id = array(); foreach ($this->cart->getProducts() as $cart_product) { $cart_product_id[$cart_product['product_id']] = 1; } Это мы создали индексный массив, чтобы не перебирать товары по нескольку раз. Т.к. товаров много, а не один. Теперь после строки: $this->data['products'][] = array( Добавляем: 'in_cart' => !empty($cart_product_id[$result['product_id']]), С контроллером на этом всё. Осталось в шаблоне в нужном месте вставить условие: <?php if ($product['in_cart']) { ?> Товар в корзине! <?php } else { ?> Товара нет в корзине! <?php } ?> P.S.: В шаблоне это всё должно находиться внутри цикла перебора товаров: <?php foreach ($products as $product) { ?>
  13. После строки: if (json['success']) { Добавить: $('.product-info .cart').html('Тут нужный код после добавления в корзину');
  14. В файле catalog/controller/product/product.php После строки: if ($product_info) { Добавляем: $this->data['product_in_cart'] = false; foreach ($this->cart->getProducts() as $cart_product) { if ($product_info['product_id'] == $cart_product['product_id']) { $this->data['product_in_cart'] = true; break; } } Потом в шаблоне товара можно использовать так: <?php if ($product_in_cart) { ?> Потом ещё надо сделать замену в скрипте добавления товара в корзину. Он тоже находится в product.tpl P.S.: Иструкция для версии 1.5.x. Т.к. вы не указали версию движка, привёл по наиболее вероятному сценарию.
  15. Добрый день. 1) Не совсем понятно о чём речь. Опишите подробней, а лучше ссылку в личку на товар. 2) Модуль вообще никак не влияет на корзину. Поэтому если в корзине что-то не то, ищите проблему в другом месте.
  16. В модуое это: <!--<operation error="skip"> <search><![CDATA[<?php foreach ($option['option_value'] as $option_value) { ?>]]></search> <add position="before"><![CDATA[<?php $opt_checked="checked"; ?>]]></add> </operation> <operation error="skip"> <search><![CDATA[<input type="radio"]]></search> <add position="replace"><![CDATA[<input type="radio" <?php echo (isset($opt_checked) ? $opt_checked : ''); $opt_checked=""; ?>]]></add> </operation> <operation> <search><![CDATA[<option value=""><?php echo $text_select; ?></option>]]></search> <add position="replace"><![CDATA[ ]]></add> </operation>--> Заменить на это: <operation> <search><![CDATA[<?php foreach ($option['product_option_value'] as $option_value) { ?>]]></search> <add position="before"><![CDATA[<?php $opt_checked="checked"; ?>]]></add> </operation> <operation> <search><![CDATA[type="radio"]]></search> <add position="replace"><![CDATA[type="radio" <?php echo (isset($opt_checked) ? $opt_checked : ''); $opt_checked=""; ?>]]></add> </operation> <operation> <search><![CDATA[<option value=""><?php echo $text_select; ?></option>]]></search> <add position="replace"><![CDATA[]]></add> </operation> Там название переменной отличается.
  17. Попробуйте в модуле это: <!--<operation error="skip"> <search><![CDATA[<?php foreach ($option['option_value'] as $option_value) { ?>]]></search> <add position="before"><![CDATA[<?php $opt_checked="checked"; ?>]]></add> </operation> <operation error="skip"> <search><![CDATA[<input type="radio"]]></search> <add position="replace"><![CDATA[<input type="radio" <?php echo (isset($opt_checked) ? $opt_checked : ''); $opt_checked=""; ?>]]></add> </operation> <operation> <search><![CDATA[<option value=""><?php echo $text_select; ?></option>]]></search> <add position="replace"><![CDATA[ ]]></add> </operation>--> Заменить на это: <operation error="skip"> <search><![CDATA[<?php foreach ($option['option_value'] as $option_value) { ?>]]></search> <add position="before"><![CDATA[<?php $opt_checked="checked"; ?>]]></add> </operation> <operation error="skip"> <search><![CDATA[<input type="radio"]]></search> <add position="replace"><![CDATA[<input type="radio" <?php echo (isset($opt_checked) ? $opt_checked : ''); $opt_checked=""; ?>]]></add> </operation> <operation> <search><![CDATA[<option value=""><?php echo $text_select; ?></option>]]></search> <add position="replace"><![CDATA[ ]]></add> </operation> Если в теме всё не перекручено, то может запуститься.
  18. Тут пересеклись названия переменных. В модуле microdata это: $data['currency'] = $this->currency->getCode(); Замените на это: $data['currency_code'] = $this->currency->getCode(); И это: <?php echo $currency; ?> Замените на это: <?php echo $currency_code; ?> Менять всё это в файле: microdata-page_product.ocmod.xml Или в моём модуле поменять название переменной, но там вхождений больше менять надо.
  19. Тут сложно сказать. Кидайте доступ на фтп в личку и ссылку на товар с опциями, помогу завести.
  20. Если секретное слово не совпадает, то оплата пройдёт. Секретное слово используется только для сообщения callback. Смотрите лог магазина и php лог хостинга. Если не получится ничего, то пришлите доступ на фтп и админку в личку. Можно добавить отладочный код и по шагам отследить что происходит.
  21. В модуле они прописаны: 'LMI_PAYMENT_NOTIFICATION_URL' => $this->url->link('payment/paymaster/result', '', 'SSL'), 'LMI_SUCCESS_URL' => $this->url->link('checkout/success', '', 'SSL'), 'LMI_FAILURE_URL' => $this->url->link('checkout/checkout', '', 'SSL'), Значит проблема не в сallback. Проверяйте совпадение секретных слов. Смотрите лог ошибок, чтожет там что-то пишется.
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.