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

Search the Community

Showing results for tags 'пересчет цены о тколичества'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Genaral
    • Новини та оголошення
    • Пропозиції та побажання
    • Акції, подарунки, конкурси та винагороди
  • Opencart 4.x
    • Opencart 4.x: General questions
    • Opencart 4.x: Installing and updating
    • Opencart 4.x: Localization
    • Opencart 4.x: Setting and optimization
    • Opencart 4.x: Sandbox
    • Opencart 4.x: Extension search
    • Opencart 4.x: Bug Reporting
  • Opencart 3.x
    • Opencart 3.x: General questions
    • Opencart 3.x: Installing and updating
    • Opencart 3.x: Localization
    • Opencart 3.x: Setting and optimization
    • Opencart 3.x: Sandbox
    • Opencart 3.x: Extension search
    • Opencart 3.x: Bug Reporting
  • Opencart 2.x
    • Opencart 2.x: General questions
    • Opencart 2.x: Installing and updating
    • Opencart 2.x: Localization
    • Opencart 2.x: Setting and optimization
    • Opencart 2.x: Sandbox
    • Opencart 2.x: Extension search
    • Opencart 2.x / ocStore 2.x: Bug Reporting
  • Реклама и продвижение
    • SEO-питання (оптимізація та просування магазину)
    • Контекстная реклама
    • Торговые площадки
    • E-commerce tracking и бизнес аналитика
    • Разное
  • Підтримка та відповіді на запитання.
    • Загальні питання
    • Встановлення, оновлення, налаштування
    • Шаблони, дизайн та оформлення магазину
    • Модули и дополнения
    • Допомога програмістам та розробникам
    • Мобильная витрина
    • Вопросы безопасности
    • Переклад
    • Отчёты об ошибках
    • Интернет-магазины и электронная коммерция
    • Песочница
  • Услуги
    • Creation of stores
    • Дизайн, верстка и шаблоны
    • Программирование, создание модулей, изменение функциональности
    • Настройка и мелкая работа по уже существующему сайту
    • Shop engine version update
    • Store filling
    • System administration (configuring hosting, servers, software)
    • Другие услуги
  • Разное
    • Пользовательские обзоры дополнений
    • Примеры сайтов на OpenCart (ocStore)
    • Курилка
    • Предложения по улучшению

Categories

  • Templates
    • Free templates
    • Платные шаблоны
  • Filters
  • Promotions & Pricing
  • Реклама и продвижение
  • Coupons & reward points, affiliate programs
  • Blogs, News & Articles
  • Reviews
  • Shopping Cart & Order
  • Product Options
  • Product Attributes
  • Product Combinations
  • Search
  • SEO & Optimization
  • Caching & Server Performance
  • Платіжні системи
  • Доставки
  • Editors
  • Design & Navigation
  • Banners, Slideshows & Galleries
  • Email Marketing & SMS Integration
  • Customer Support & Chat
  • Обмен данными
  • Учет в заказе
  • Compare & Wishlist
  • Социальные сети
  • Parsers
  • Модули
  • Tools & Developer Tools
  • Licenses
  • Language packages
  • Other
  • Отчеты
  • Сборки
    • ocStore
  • Services
    • Графика и дизайн
    • Маркетинг

Categories

  • Служебные документы
  • Оплата
  • Документация Opencart

Categories

  • Gereneral questions
  • Purchasing extensions
  • For developer
  • Account
  • Technical support
  • Financial department

Blogs

  • Konorws (Разработка и модификация Opencart)
  • Блог mr.Kent)
  • Прожектор Бритни Спирс
  • Layk
  • Продвижение интернет-магазина, seo оптимизация
  • Записная книжка
  • Блог RGB
  • Модули которые сделают сайт лучше
  • Блог веб-студии NeoSeo
  • Useful IT
  • Записи
  • Найденные решения проблем с Opencart
  • ocdroid blog
  • Заметки на полях...
  • Pimur
  • Серж Ткач
  • О жизни, смерти, о бизнесе и Опенкарте
  • Просто мысли от laim731
  • Маркетинг и продвижение интернет-магазина
  • Мой копирайтинг
  • SEO боксинг специального назначения
  • Get-Web Dev
  • Seok
  • Блоги sitecreator-а
  • Best practice
  • Vlad-Egorov-Blog
  • Блог spectre
  • commanddotcom
  • Внимание мошенники
  • Наблюдения обычного человека
  • Блог Rassol2
  • Блог Exploits
  • блог для натуралов
  • Настюша, тут есть темы
  • Пропитано рекламой
  • Tutorial
  • ОтВинта
  • Tg chnls
  • Блог
  • Блог sv2109
  • КАК ОРГАНИЗОВАТЬ НОВОСТНЫЕ ПОДПИСКИ НА БАЗЕ API OPENCART 3/0/2
  • VDS/VPS, серверы под Linux: установка, настройка, оптимизация
  • IT блог
  • Блог
  • Opencart SEO
  • Путёвые заметки о работе магазина NiceBike на платформе OpenCart
  • Blondi Blog
  • Полезные статьи, новости.
  • Блог владельца магазина
  • разное
  • ПРОДАЖА АКАУНТОВ-binance ВЕРИФИЦИРОВАННЫe ЧИСТЫЕ УСПЕВАЙТЕ КУПИТЬ ПО НИЗКОЙ ЦЕНЕ
  • Диспансеризация
  • wozobat
  • quasarbyte
  • Мой блог
  • Igorych
  • aaaaa
  • 👌🔊Bellsouth CUSTOMER support number 1+(8O8)678=9O64-☎phone number
  • Liudmila marketer
  • Заметки реалиста
  • ocstore на ноліках
  • Про Opencart
  • Блог про рутинні процеси в магазині на ocsote
  • Radaevich
  • Плагіни Opencart
  • Крафтовий OpenCart: Старт пригоди. Ціна створення сайту на Опенкарт
  • Щось про щось
  • Від власника до розробника

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Сайт


Skype


City:


Interests

Found 1 result

  1. Добрый день! Нужен модуль, который будет автоматически пересчитывать цену на странице товара (а не только в корзине), в зависимости от кол-ва товара и скидки от кол-ва или/и выбранной опции, и указывать сразу конечную цену с учётом скидки от указанного кол-ва и выбранных опций. Т.е. в карточке товара указано например: 1шт. - 1000₽ (исходная цена) 5шт. или более: 800₽ 10шт. или более: 700₽ И когда вводишь в карточке товара допустим 11шт. то сразу выводилась бы общая цена в карточке товара - 7700руб. Скидки при этом указываются в админке как обычно в карточке товара в пункте (скидка) и меняются от кол-ва товара. Движок - OCSHOP 1.5.6.4.1 Посоветуйте пожалуйста готовое решение или где можно поправить ручками код? Сейчас в принципе ближайший из подходящего и работающего это бесплатный модуль - Price change with option https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=28277 Но этот модуль умеет только пересчитывать цену в зависимости от кол-ва товара или выбранной опции, а скидки при этом не учитываются. Как можно допилить возможность обновления цены с учётом скидок, желательно в VQmod. Код используемого модуля: <?xml version="1.0" encoding="UTF-8"?> <modification> <id>Price Option Change</id> <version>1.0.x</version> <vqmver required="true">2.4.0</vqmver> <author>Pinnacle Web Solutions</author> <file name="catalog/controller/product/product.php"> <operation> <search position="before"><![CDATA[ public function upload() {]]></search> <add><![CDATA[ public function price_option_change() { $json = array(); $options_makeup = 0; if (isset($this->request->post['product_id'])) { $product_id = (int)$this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = (int)$this->request->post['quantity']; } else { $quantity = 1; } $this->language->load('product/product'); $this->load->model('catalog/product'); $product_info = $this->model_catalog_product->getProduct($product_id); // Product Information if ($product_info) { if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) { $data['price'] = $product_info['price']; } else { $data['price'] = false; } if ((float)$product_info['special']) { $data['special'] = $product_info['special']; } else { $data['special'] = false; } if (isset($this->request->post['option']) && $this->request->post['option']) { foreach ($this->model_catalog_product->getProductOptions($product_id) as $option) { if($option['type'] == 'select' || $option['type'] == 'radio' || $option['type'] == 'checkbox' || $option['type'] == 'image'){ foreach ($option['option_value'] as $option_value) { //If options checkbox if(isset($this->request->post['option'][$option['product_option_id']]) && is_array($this->request->post['option'][$option['product_option_id']])) { array_filter($this->request->post['option'][$option['product_option_id']]); foreach($this->request->post['option'][$option['product_option_id']] as $checked_option) { if ($checked_option == $option_value['product_option_value_id']) { if (!$option_value['subtract'] || ($option_value['quantity'] > 0)) { if ((($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) && (float)$option_value['price']) { $price = $option_value['price']; } else { $price = false; } if ($price) { if ($option_value['price_prefix'] === '+') { $options_makeup = $options_makeup + (float)$price; } else { $options_makeup = $options_makeup - (float)$price; } } } } } } //If options not checkbox if (isset($this->request->post['option'][$option['product_option_id']]) && $this->request->post['option'][$option['product_option_id']] == $option_value['product_option_value_id']) { if (!$option_value['subtract'] || ($option_value['quantity'] > 0)) { if ((($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) && (float)$option_value['price']) { $price = $option_value['price']; } else { $price = false; } if ($price) { if ($option_value['price_prefix'] === '+') { $options_makeup = $options_makeup + (float)$price; } else { $options_makeup = $options_makeup - (float)$price; } } } } } } unset($price); } } if ($data['price']) { $json['new_price']['price'] = $this->currency->format($this->tax->calculate((($data['price'] + $options_makeup) * $quantity ), $product_info['tax_class_id'], $this->config->get('config_tax'))); } else { $json['new_price']['price'] = false; } if ($data['special']) { $json['new_price']['special'] = $this->currency->format($this->tax->calculate((($data['special'] + $options_makeup ) * $quantity), $product_info['tax_class_id'], $this->config->get('config_tax'))); } else { $json['new_price']['special'] = false; } if ($this->config->get('config_tax')) { $json['new_price']['tax'] = $this->currency->format(((float)$product_info['special'] ? ($product_info['special'] + $options_makeup): ($product_info['price'] + $options_makeup)) ); } else { $json['new_price']['tax'] = false; } $json['success'] = true; } else { $json['success'] = false; } echo json_encode($json); exit; } ]] </add> </operation> </file> <file name="catalog/view/theme/*/template/product/product.tpl"> <operation> <search position="replace"><![CDATA[ <?php echo $price; ?>]]></search> <add><![CDATA[<span class="price-old"><?php echo $price; ?></span>]]></add> </operation> <operation> <search position="before"><![CDATA[<?php echo $footer; ?>]]></search> <add><![CDATA[<script type="text/javascript"> function PriceOptionChange(){ $.ajax({ type: 'POST', url: 'index.php?route=product/product/price_option_change', data: $('.product-info input[type=\'text\'], .product-info input[type=\'hidden\'], .product-info input[type=\'radio\']:checked, .product-info input[type=\'checkbox\']:checked, .product-info select, .product-info textarea'), dataType: 'json', success: function(json) { if (json.success) { $('.product-info .price-old').html(json.new_price.price); $('.product-info .price-new').html(json.new_price.special); $('.product-info .price-tax').html("<?php echo $text_tax; ?> " + json.new_price.tax); } } }); } $('.product-info input[type=\'text\'], .product-info input[type=\'hidden\'], .product-info input[type=\'radio\'], .product-info input[type=\'checkbox\'], .product-info select, .product-info textarea').on('change', function() { PriceOptionChange(); }); $('.product-info input[name=\'quantity\']').on('keyup', function() { PriceOptionChange(); }); </script> ]]></add> </operation> </file> </modification> price_change_ajax.xml
×
×
  • 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.