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

Leaderboard

Popular Content

Showing content with the highest reputation on 04/01/2011 in all areas

  1. Т.к. версию 0.2.0 предполагается переписать на Perl, рекомендую всем авторам дополнений начать подготовку своих дополнений на этом языке. Апгрэйд с предыдущей версии на PHP будет производится прозрачно - так-же как и с версии на версию сейчас. Формат БД не изменится.
    2 points
  2. Здесь уже обсуждался вопрос о том, что система скидок в OpenCart не слишком гибкая. Например, на вкладке "Специальное" можно задать акционную цену на товар, но, к сожалению, только в абсолютном, т.е. денежном выражении. Сами понимаете, что это крайне не удобно: меняется цена на товар - вам нужно пересчитывать цену по акции, акции бывают разные и с разными скидками, и каждый раз нужно все считать, считать, считать... А как было бы здорово, если можно было бы указывать величину скидки в таких привычных и понятных для всех процентах! Ну что ж, попробуем реализовать нашу идею, минимальными затратами, без сложных переделок. Например, можно сделать такое условие: если цена по акции больше 1, то значит она указана традиционным способом, т.е. в денежном выражении, если же цена по акции меньше 1, то она указана в процентном выражении. Например, значение цены 0.95 соответствует 5% скидке, а 0.85 скидке в 15%. Теперь осталось модифицировать код системы для правильного расчета цены по акции. Начнем с основной страницы отображения товара, файла catalog\controller\product\product.php, необходимо модифицировать код следующим образом: $this->data['price'] = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax'))); $special = $this->model_catalog_product->getProductSpecial($this->request->get['product_id']); if ($special < 1) $special = (int)($product_info['price'] * $special); // наша строка для расчета скидки в процентах if ($special) { это для основного продукта страницы. И еще в одном месте: $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax'))); $special = $this->model_catalog_product->getProductSpecial($result['product_id']); if ($special < 1) $special = (int)($result['price'] * $special); // наша строка для расчета скидки в процентах if ($special) { это для рекомендуемых продуктов. Аналогично второму фрагменту нужно внести изменения в следующие файлы: catalog\controller\product\category.php catalog\controller\product\manufacturer.php catalog\controller\product\search.php catalog\controller\module\bestseller.php catalog\controller\module\featured.php catalog\controller\module\latest.php catalog\controller\module\special.php После внесения этих изменений у вас на сайте везде должен заработать новый способ расчета цены спец-предложения, проверьте. А вот корзина все равно считается не правильно! Пришлось повозиться. Изменения нужно внести в файл: system\library\cart.php $product_special_query = $this->db->query("SELECT price FROM " . DB_PREFIX . "product_special WHERE product_id = '" . (int)$product_id . "' AND customer_group_id = '" . (int)$customer_group_id . "' AND ((date_start = '0000-00-00' OR date_start < NOW()) AND (date_end = '0000-00-00' OR date_end > NOW())) ORDER BY priority ASC, price ASC LIMIT 1"); if ($product_special_query->num_rows) { if ($product_special_query->row['price'] < 1) $price = (int)($product_query->row['price'] * $product_special_query->row['price']); // это две новых строки else $price = $product_special_query->row['price']; // это две новых строки } else { $price = $product_query->row['price']; } После этого изменения ваша корзина будет считаться так, как нам нужно. Вот и все, прошу экспериментировать и комментировать. ПС: изменения производились на ocStore 0.1.1, но не думаю, что на других версиях что-то по-другому. ППС: маленький бонус от переделки: теперь, наконец-то, можно легко и просто устанавливать постоянные скидки для постоянных клиентов в зависимости от статуса (группы) клиента. И не надо каждый раз пересчитывать кучу цен...
    1 point
  3. Хотелось бы чтоб у "производителей" было описание, так же как у "категорий". Есть готовые решения?
    1 point
  4. сам, заходя на свой магаз случайно, голосую активно и отзывы оставляю, ключевыми словами набитые)
    1 point
  5. есть еще вариант такой самый надежный предложить вознаграждение (не печеньки конечно) денежные знаки очень часто очень сильно увеличивают работоспособность человека)и увеличение равномерно цене)
    1 point
  6. причешу код - выложу UPD все-таки причесывать код очень лень :( поэтому пользуемся AS IS: сделай сам форумный CODE рвет строки в самых неподходящих местах при отображении кода, поэтому, в поисках инструкции, смотрите "oc_random.coupon.code_manual.txt" (спасибо sergey за репорт) oc_random.coupon.code_manual.txt = = = скачать измененный файл (от версии ocStore 0.1.9) coupon_form.tpl.txt не забываем удалить ".txt" и положить файл сюда admin/view/template/sale/coupon_form.tpl
    1 point
  7. В /var/www/catalog/view/theme/default/template/common/footer.tpl <div class="div2"><?php echo $text_powered_by; ?></div>Это и есть надпись. Откомментируйте строчку либо удалите ее. <!--<div class="div2"><?/*php echo $text_powered_by;*/ ?></div>-->Пы.Сы в папке /var/www/catalog/view/theme/default/ "default название темы" содержится шаблон сайта все изменение производите там в файлах *.tpl не мучайте языковые файлы(перевод). =)
    1 point
  8. AlexFisher, народная мудрость\\\Если сам себя не похвалишь,не кто не похвалит) monax, индексируется как и любая страница не закрытая в Роботс
    0 points
  9. Не пойму тогда если вы почистили тему почему не удалили наиглупейший пост перед вашим? Человек написавший его абсолютно не разбирается во многих вопросах и он тут тоже не к месту в этой ветке. А для доказательства читайте тут: http://forum.webasyst.ru/viewtopic.php?id=6786 Тема поднималась еще год назад.
    -1 points
×
×
  • 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.