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

Rex4r

Newbie
  
  • Posts

    15
  • Joined

  • Last visited

Everything posted by Rex4r

  1. Разобрался. Если кому надо: в feature.php после if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax'))); } else { $special = false; } пишем $discounts = $this->model_catalog_product->getProductDiscounts($product_info['product_id']); $this->data['discounts'] = array(); foreach ($discounts as $discount) { $this->data['discounts'][] = array( 'quantity' => $discount['quantity'], 'price' => $this->currency->format($this->tax->calculate($discount['price'], $product_info['tax_class_id'], $this->config->get('config_tax'))) ); } В category.php после if ((float)$result['special']) { $special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax'))); } else { $special = false;} пишем $discounts = $this->model_catalog_product->getProductDiscounts($result['product_id']); $this->data['discounts'] = array(); foreach ($discounts as $discount) { $this->data['discounts'][] = array( 'quantity' => $discount['quantity'], 'price' => $this->currency->format($this->tax->calculate($discount['price'], $result['tax_class_id'], $this->config->get('config_tax'))) ); } И в соответствующих .tpl где надо <div class="discount"> <?php foreach ($discounts as $discount) { ?> <?php echo sprintf($text_discount, $discount['quantity'], $discount['price']); ?><br /> <?php } ?> </div>
  2. Добрый день. Задача вроде бы простая, но ни как не могу её решить. Необходимо чтобы на страницах каталога и в модулях (рекомендуемые и лидеры продаж) на ряду с обычной ценой выводилась цена со скидкой (оптовая цена при покупке от N товаров). в controller/product.php используется $discounts = $this->model_catalog_product->getProductDiscounts($this->request->get['product_id']); $this->data['discounts'] = array(); foreach ($discounts as $discount) { $this->data['discounts'][] = array( 'quantity' => $discount['quantity'], 'price' => $this->currency->format($this->tax->calculate($discount['price'], $product_info['tax_class_id'], $this->config->get('config_tax'))) ); } но я не могу понять как это вставить в category.php потому, что там вообще нет if ($product_info) { а в feature.php ругается на $discounts = $this->model_catalog_product->getProductDiscounts($this->request->get['product_id']); потому, что не знает что такое product_id и я не пойму как надо написать чтобы он понял
  3. Разобрался. Забыл прописать пути к tpl для дополнительного магазина в Система - Дизайн - Схемы.
  4. Подскажи, пожалуйста как настроить схемы в дополнительных магазинах. Чет я ни как не разберусь =( Вот тут тему создал: https://opencartforum.com/topic/38661-%D1%81%D1%85%D0%B5%D0%BC%D1%8B-%D0%B4%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D1%85-%D0%BC%D0%B0%D0%B3%D0%B0%D0%B7%D0%B8%D0%BD%D0%BE%D0%B2-%D0%B2-%D0%BC%D1%83%D0%BB%D1%8C%D1%82%D0%B8%D0%BC%D0%B0%D0%B3%D0%B0%D0%B7%D0%B8/ Разобрался. Забыл прописать пути к tpl для дополнительного магазина в Система - Дизайн - Схемы.
  5. Добрый день. Столкнулся с такой проблемой: на всех страницах дополнительных магазинов в мультимагазине используется одна и та же схема (которая указана как схема по умолчанию в настройках магазина). Например, если в настройках указана главная, то на всех страницах, в т.ч. в категориях и карточках товара отображаются все модули, которые есть на главной, и нет модулей, которые должны быть (например фильтр в категориях) Если установить схемой по умолчанию схему "по-умолчанию" (извиняюсь за тавтологию), то главная страница остается пуста, в категориях не работает фильтр и т.д. Как можно решить сию проблему?
  6. Тогда на каждый товар будет приходить по заявке или есть модуль, который формирует список товаров на предзаказ и потом разом всё отправляет? Если по одному, то это не вариант, ибо (по мнению заказчика) высока вероятность того, что чел сразу будет заказывать много товаров.
  7. Тем что склада нет в принципе. Товар изготавливается по факту поступления заказа. Именно поэтому перед выставлением счета нужно чтобы менеджер связался с клиентом и сообщил примерное время изготовления.
  8. Добрый день. Столкнулся с такой сложностью: заказчик хочет разделить магазин на онлайн и оффлайн покупки. Соответственно онлайн покупки становятся доступны для скачивания сразу после оплаты, а оффлайн приходят через некоторое время (от пары дней до месяца). Заказчик хочет чтобы онлайн и оффлайн товары оплачивались отдельно. Т.е. чел бродит по сайту, закидывает товары в корзину, при этом отдельно формируется заказ на онлайн товары и отдельно на оффлайн (при этом некоторые товары могут быть заказаны и так, и так). Для чего это надо: С онлайн товарами проблем нет - чел оплатил и тут же скачал что ему надо. С оффлайн товарами проблема - неизвестные сроки. У заказчика нет склада и практически нет запаса товаров. Из-за этого сроки доставки могут колебаться от пары дней до пары месяцев. Оформлять через возврат он категорически не желает мотивируя это тем, что будут проблемы с банком если туда-сюда деньги перекидывать. Поэтому он хочет чтобы онлайн товары оплачивались как обычно - зашел в корзину, жмакнул купить, оплатил, скачал - радуешься. А с оффлайн товаром другая история: закинул в корзину, зашел в оформление заказа и прежде чем челу выставляется счет на оплату должна вылазить форма для ввода контактных данных. Т.е. сначала с челом связывается менеджер, обсуждает заказ (чему какие сроки), если нужно что-то из заказа убирает и только потом выставляется счет на оплату. Подскажите, пожалуйста, как можно реализовать что-то подобное.
  9. Немного разобрался. В контроллере категорий дописал после этого: foreach ($results as $result) { вот это: $this->data['kolvo'] = $result['quantity']; $this->data['weight'] = $result['weight']; $this->data['weight_class_id'] = $result['weight_class_id']; Но теперь возникла проблема с тем, что для всех товаров выводится кол-во и вес последнего товара. Пока не понял почему. Вот код из контроллера: foreach ($results as $result) { if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); } else { $image = $this->model_tool_image->resize('no_image.jpg', $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); } if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax'))); } else { $price = false; } if ((float)$result['special']) { $special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax'))); } else { $special = false; } if ($this->config->get('config_tax')) { $tax = $this->currency->format((float)$result['special'] ? $result['special'] : $result['price']); } else { $tax = false; } if ($this->config->get('config_review_status')) { $rating = (int)$result['rating']; } else { $rating = false; } /****************************сколько****************************/ $this->data['quantity'] = $result['quantity']; /****************************сколько****************************/ /******************************вес******************************/ $this->data['weight'] = $result['weight']; $this->data['weight_class_id'] = $result['weight_class_id']; /******************************вес******************************/ $this->data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' => $result['name'], 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 300) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'rating' => $result['rating'], /****************************сколько****************************/ 'quantity' => $result['quantity'], /****************************сколько****************************/ /******************************вес******************************/ 'weight' => $result['weight'], 'weight_class_id' => $result['weight_class_id'], /******************************вес******************************/ 'reviews' => sprintf($this->language->get('text_reviews'), (int)$result['reviews']), 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); }
  10. Не получается подружить сей чудесный модуль с filterpro 2.3.10 там просто нет тех фалов и полей, что указаны в vQmod
  11. День добрый. Знакомство с опенкартом начал не так давно, потому прошу не кидаться тапками) Мне нужно вывести в категориях под каждым товаром его вес и количество товара на складе. В карточке товара реализовал это с помощью добавления в контроллер продукта после этого: if ($product_info) { вот этого: $this->data['kolvo'] = $product_info['quantity']; $this->data['weight'] = $product_info['weight']; $this->data['weight_class_id'] = $product_info['weight_class_id']; Как сделать тоже самое для категории? ocStore 1.5.5.1.2
  12. У меня в этом файле код другой. Вот мой /controller/module/currency.php <?php class ControllerModuleCurrency extends Controller { protected function index() { if (isset($this->request->post['currency_code'])) { $this->currency->set($this->request->post['currency_code']); unset($this->session->data['shipping_method']); unset($this->session->data['shipping_methods']); if (isset($this->request->post['redirect'])) { $this->redirect($this->request->post['redirect']); } else { $this->redirect($this->url->link('common/home')); } } $this->language->load('module/currency'); $this->data['text_currency'] = $this->language->get('text_currency'); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { $connection = 'SSL'; } else { $connection = 'NONSSL'; } $this->data['action'] = $this->url->link('module/currency', '', $connection); $this->data['currency_code'] = $this->currency->getCode(); $this->load->model('localisation/currency'); $this->data['currencies'] = array(); $results = $this->model_localisation_currency->getCurrencies(); foreach ($results as $result) { if ($result['status']) { $this->data['currencies'][] = array( 'title' => $result['title'], 'code' => $result['code'], 'symbol_left' => $result['symbol_left'], 'symbol_right' => $result['symbol_right'] ); } } if (!isset($this->request->get['route'])) { $this->data['redirect'] = $this->url->link('common/home'); } else { $data = $this->request->get; unset($data['_route_']); $route = $data['route']; unset($data['route']); $url = ''; if ($data) { $url = '&' . urldecode(http_build_query($data, '', '&')); } $this->data['redirect'] = $this->url->link($route, $url, $connection); } if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/currency.tpl')) { $this->template = $this->config->get('config_template') . '/template/module/currency.tpl'; } else { $this->template = 'default/template/module/currency.tpl'; } $this->render(); } } ?> что-то я не пойму где тут изменить надо... изменил 5 строку $this->currency->set($this->request->post['currency_code']); на $this->set('RUB') валюту поменял на рубли, но не дает поменять валюту на $
  13. Делаю магазин на ocStore 1.5.5.1. Опыт работы с опенкартом у меня небольшой. Буду рад подсказкам. Задача такова: на сайте 2 валюты: рубли и $ клиент хочет указывать цену товара в $ (чтобы цена в рублях менялась в соответствии с курсом), но при этом изначально цены на сайте должны быть в рублях (с возможностью переключения на $) Пробовал делать через js, но это была плохая идея))
×
×
  • 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.