Перейти к содержанию
View in the app

A better way to browse. Learn more.

Русскоязычное сообщество Opencart

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

В связи с блокировкой банка QIWI оплата через сайт не возможна.
Для оплаты и получения дополнений просьба писать в личные сообщения 
Admin*у
или в Телеграмм https://t.me/pascha_opencart
После оплаты Вам так же будет доступно скачивание дополнений и обновлений на данном форуме

Полезные доработки

Подсмотрено в интернете

  1. Подавляющее большинство интернет-магазинов так или иначе оперируют данными количества товара на сайте. Учёт остатков товара позволяет контролировать физическое наличие товара, и в случае необходимости обрабатывать заказы в нужном порядке. В системе OpenCart уже с коробки заложен механизм учёта остатков. Вы можете отслеживать изменение количества остатков товара в каталоге, и при необходимости ограничивать возможность заказа товаров, которых уже нет. Это бывает особенно важно, когда учёт количества доступных товаров ведётся непосредственно на сайте. Однако бывают ситуации, когда учёт остатков не имеет большой значимости для ведения интернет-магазина. К примеру, если в…

    • 0

      Баллы репутации

    • 0 ответов
    • 612 просмотров
  2. Практический каждый более или менее наполненный товарами интернет-магазин использует некоторые критерии сортировки товаров на сайте. В одном интернет магазине это может быть показ по дате добавления, в другом же это сортировка по популярности того или иного продукта. Сортировка товаров в интернет магазине позволяет выставлять элементы в нужном порядке. Это позволяет существенно оптимизировать реализацию товаров на витрине и конечно же вопрос релевантности никто ещё не отменял. Понятие релевантности в сети интернет сегодня уже используется довольно широко, начиная от поисковых систем, заканчивая сайтом с новостной лентой. И это хорошо работает, когда популярные записи…

    • 0

      Баллы репутации

    • 0 ответов
    • 406 просмотров
  3. Started by Pascha,

    OpenCart является одним из популярных движков на которых можно за короткое время развернуть полноценный интернет магазин. Современный интернет-магазин сложно представить без функции отправки почтовых сообщений. Почтовые сообщения позволяют получать различные уведомления как владельцам сайта, так и покупателям. В свою очередь побуждая их к проявлению нужной активности и не только. В данном посту мы рассмотрим пример отправки почтовых сообщений через свои скрипты. В системе OpenCart существует базовый набор самых необходимых почтовых уведомлений. Эти почтовые уведомления как правило прописаны в самих модулях. В некоторых ситуациях бывает необходимо сделать самостоятельную…

    • 0

      Баллы репутации

    • 0 ответов
    • 604 просмотра
  4. В базовом наборе в системе OpenCart есть некоторый набор статусов заказа. В зависимости от конкретного этапа выполнения заказа, он может принимать один из этих статусов. Просмотреть и настроить статусы заказов вы можете в администраторской части сайта. Просмотреть статусы заказов можно по такому пути: System > Localisation > Order Statuses Система > Локализация > Статусы заказа В моём примере используется OpenCart версии 2.3, в других версиях пути могут отличаться, поэтому это стоит так же учитывать. У самих товаров статусы так же выставляются в администраторской части сайта, при просмотре и редактировании полей заказа. Не всегда бывает удобно менят…

    • 0

      Баллы репутации

    • 0 ответов
    • 561 просмотр
  5. При работе с CMS OpenCart владелец сайта рано или поздно сталкивается с необходимостью установки модуля на сайт. Модули позволяют дополнять и расширять функционал сайта, и возможности их довольно обширны. В данном посту мы поговорим о том, как можно установить модуль на OpenCart версии 2.x. Установить модуль в OpenCart можно двумя распространёнными способами, посредством загрузчика в администраторской части сайта, и вручную, посредством файлового менеджера. Два этих метода мы рассмотрим далее. Установка модуля OpenCart через админку Данный способ является более предпочтительным, т.к. более вероятно, что при установке вы не допустите ошибок, т.к. манипуляции…

    • 0

      Баллы репутации

    • 0 ответов
    • 479 просмотров
  6. Started by Pascha,

    OpenCart как и многие другие CMS умеет кэшировать данные сайта. Механизмы кэширования позволяют оптимизировать производительность системы в целом, и ускорить процесс обработки запросов посетителей сайта. В данном посту мы поговорим про кэширование в OpenCart 2.x. В OpenCart существует целое множество различных механизмов кэширования. Про различные типы кэша мы поговорим далее. Как сбросить системный кэш в OpenCart Системный кэш в большей степени используется для хранения результатов запроса в базу данных. Разработчики могут использовать системный кэш для хранения данных, которые меняются очень редко. К примеру, данные о языке сайта, списки локаций, товаров,…

    • 0

      Баллы репутации

    • 0 ответов
    • 819 просмотров
  7. Started by Pascha,

    После установки SSL-ключа на сайте, возникает необходимость перенаправления URL-адреса с http на https. Как правило, на самом хостинге довольно часто встречается функционал, который позволяет выполнить редирект за защищённый протокол. Однако в случае с OpenCart, в настройках так же придётся выполнить кое-какие манипуляции. Далее мы поговорим о переводе сайта OpenCart 2.x на работу по https протоколу. Первый шаг — это правка конфигурационных файлов сайта. Файл /config.php присутствует в OpenCart в двух папках. Первый в корне сайта, второй в папке /admin. Таким образом, править будет необходимо два файла: /config.php /admin/config.php В том, что находится в ко…

    • 0

      Баллы репутации

    • 1 ответ
    • 1.2 тыс просмотров
  8. В категории Opencart есть пагинация. С помощью нее мы переходим на следующие страницы в каталоге товаров. Но часто многим пагинация не нужна. В категории Opencart есть пагинация. С помощью нее мы переходим на следующие страницы в каталоге товаров. Но часто многим пагинация не нужна, и всем известно что переход на следующие страницы порождает дубли категорий в опенкарте. Есть альтернативный вариант показать пользователю больше товаров не переходя на постраничную навигацию. Этот способ мы назвем подгрузка товаров или же Кнопка показать больше или показать еще 20 товаров, где 20 - это лимит на страницу. В чем преимущества? Более быстрая подгрузка товаров,…

    • 0

      Баллы репутации

    • 2 ответа
    • 1.3 тыс просмотров
  9. Банальная ситуация с необходимостью восстановления пароля администратора довольно популярна. О том, как это случается, мы говорить не будем, а рассмотрим ситуацию, когда нет возможности доступа в админ часть для смены пароля. В данном примере мы рассматриваем восстановление пароля посредством утилиты phpMyAdmin. А это значит, что у вас должен быть доступ к самой базе данных, например, посредством панели управления сайтом. Если у вас локальный сервер, то здесь уже гораздо проще. Приступим к сбросу пароля пользователя OpenCart. 1. Перейдите в phpMyAdmin; 2. Откройте базу данных сайта; 3. В списке таблиц БД необходимо найти таблицу oc_user; 4. Находим п…

    • 0

      Баллы репутации

    • 0 ответов
    • 562 просмотра
  10. Множество популярных фреймворков используют шаблон проектирования MVC, и OpenCart не стал исключением. Концепция MVC широко используется в современном веб-программировании, и популярность её в первую очередь в том, что этот шаблон проектирования прост для понимания, и решает довольно распространённые проблемы с разработкой архитектуры проекта. Для тех, кто не знает, MVC представляет из себя архитектуру вида Модель—Представление—Контроллёр. В модели содержатся все основные данные приложения, касательно запросов к базе данных, основной логики, и методов работы. Контролёры в свою очередь являются промежуточным звеном между моделью и представлением, и осуществляют …

    • 0

      Баллы репутации

    • 0 ответов
    • 468 просмотров
  11. Started by Pascha,

    Практический каждый более или менее наполненный товарами интернет-магазин использует некоторые критерии сортировки товаров на сайте. В одном интернет магазине это может быть показ по дате добавления, в другом же это сортировка по популярности того или иного продукта. Сортировка товаров в интернет магазине позволяет выставлять элементы в нужном порядке. Это позволяет существенно оптимизировать реализацию товаров на витрине и конечно же вопрос релевантности никто ещё не отменял. Понятие релевантности в сети интернет сегодня уже используется довольно широко, начиная от поисковых систем, заканчивая сайтом с новостной лентой. И это хорошо работает, когда популярные записи…

    • 0

      Баллы репутации

    • 0 ответов
    • 646 просмотров
  12. Иногда при верстке шаблона и последующей ее адаптации под опенкарт возникают такие задачи, как вывод количества товара в какой то нестандартной позиции(месте). Решается эта задача добавлением одной строчке в нужном контроллере, а так же в темплейте. Итак, в контроллере добавляем $data['cart_count'] = $this->cart->countProducts(); Далее уже в шаблоне выводит эту информацию <?php echo $cart_count; ?> Вот такими несложными манипуляциями можно вывести информацию о текущем количестве товара в корзине. Если необходимо добавить еще какой то текст перед или после количества товара, можно это сделать либо непосредственно в шаблоне В корзин…

    • 0

      Баллы репутации

    • 1 ответ
    • 579 просмотров
  13. Можно конечно каждой картинке в текстовом редакторе в режиме "источник" прописывать class="img-responsive" конечно, можно, но зачем если эта "небольшая проблемка" решается несколькими строчками "жабаскрипта": <script> $('img').each(function() { $(this).addClass('img-responsive'); }); </script> *само собой вставляем его в конец кода подвала footer перед </body></html>

    • 0

      Баллы репутации

    • 2 ответа
    • 1 тыс просмотров
  14. Начну с того, что в сети очень много решений по выводу атрибутов в категории и по аналогии в модулях. Как правило общепринято делать так Шаг первый В контроллерах : (category.php, compare.php, manufacturer.php, search.php, special.php) в массив после 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('config_product_description_length')) . '..', вставляем 'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']), Шаг второй В файлах представления (tpl) там где необходимо <?php if($product['attr…

    • 0

      Баллы репутации

    • 0 ответов
    • 534 просмотра
  15. Started by Pascha,

    По дефолту в Опенкарте, как правило, при вводе данных в поле пароля, видны только точки. Вjзьму для примера форму регистрации на сайте: не очень удобно для Ваших пользователей сайта не правда ли? Этой задачей и озадачились мои заказчики и попросили сделать отображение/скрытие значения в поле пароля, ну что же... воспользуемся "жабаскриптом". *Покажу сразу готовую конструкцию: <input type="password" name="password" id="password-show" class="modal-input" value="" placeholder="<?php echo $popup_logreg_login_password_placeholder; ?>" /> <img class="show-password" src="catalog/view/theme/default/image/eyesi.png" alt="" title="Показат…

    • 0

      Баллы репутации

    • 0 ответов
    • 546 просмотров
  16. На самом деле не так страшен черт как его малюют. Приступим: Для начала обернем блок ( я от балды просто обернул код вывода меню навигации) , который надо зафиксировать при прокрутке в <div id="scroll-menu" class="default"> ... </div> Далее пишем простой ""жабаскрипт" смены класса данного блока при определенном расстоянии <script> $(document).ready(function(){ var $menu = $("#scroll-menu"); $(window).scroll(function(){ if ( $(this).scrollTop() > 100 && $menu.hasClass("default") ){ $menu.removeClass("default").addClass("fixed"); } else if($(this).scrollTop() <…

    • 0

      Баллы репутации

    • 1 ответ
    • 841 просмотр
  17. Вариант1 (стандартный) Приступим к несложным махинациям и переоденем шапочку сайта других страниц кроме главной. К примеру нам нужно изменить контент в пределах <header>....</header> Идем по пути catalog/view/theme/default/template/common/header.tpl ищем <header> и перед ним вставляем <?php if ($home == $og_url) { ?> далее ищем </header> и после него вставляем <?php } else { ?> <header> Тут какой то новый контент </header> <?php } ?> *SeoPro в настройках должно быть включено обязательно! После проделанных манипуляций кэш естественно обновляем

    • 0

      Баллы репутации

    • 2 ответа
    • 875 просмотров
  18. Решение простое как три рубля ( три строчки кода) итак приступим, разместим, к примеру в шапке сайта в catalog/controller/common/header.php $result = $this->db->query("SELECT COUNT(*) AS `count` FROM `" . DB_PREFIX . "product` WHERE `status` = 1"); $data['products_total_count'] = $result->row['count']; в catalog/view/theme/default/template/common/header.tpl там где хотим: <div class="statistikblock"> В настоящий момент в магазине: <span class="statistik"><?php echo $products_total_count; ?></span> товаров </div> p.s. Естественно что это упрощенный вариант для понимания и при мультиязычности сайта все…

    • 0

      Баллы репутации

    • 0 ответов
    • 427 просмотров
  19. Started by Pascha,

    Иногда дизайнеры "хохмят" и требуется выделить цену, оставив собственно валюту обычным шрифтом. На просторах форума и инета предлагают лезть в БД и вставлять в таблицу теги.... я б не стал ))) Вставим простой скриптик в footer.tpl <script> (function($) { $.fn.paintFirstWord= function(font) { var str = this.text(); var splited = str.split(' '); var replaced = str.split(splited[0]).join('<span style = "font-weight:'+font +';">'+splited[0]+'</span>'); this.html(replaced); }; $('.price').each( function() { $(this).paintFirstWord('700'); }); }); </script> Немного разжую чего к чему: font - это наша переменная кото…

    • 0

      Баллы репутации

    • 0 ответов
    • 416 просмотров
  20. Сортировка товаров в корзине по порядку добавления В Opencart с 2.x сортировка товаров в корзине не соответствует порядку их добавления. Например мы добавили домофон, кабель к нему и монитор. Так вот в корзине может быть нарушен порядок, то есть сначала будет идти кабель, потом монитор а уже после них первый добавленный домофон. Согласитесь, это не совсем логично. Виной всему будет выборка из базы данных в таблице cart. Дело в том что при запросе в базу нет условия сортировки и данные идут как им захочется. Что бы структурировать их необходимо в файле system/library/cart/cart.php строку $cart_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "car…

    • 1

      Баллы репутации

    • 3 ответа
    • 760 просмотров
  21. Выкладываю для разработчиков скрипт для сборки необходимых стилей для страницы. Лично моему сайту он помог сократить стили почти в 2 раза. Возможно кому-то нужно будет скрипт доработать на сохранение списка стилей не попадающие на экран или не применяемые на странице, или обработку определённых файлов. busCritical v0.1 - первая версия скрипта для сборки критических стилей Спойлер bus_critical.js Пример работы: var s = document.createElement('script'); s.async = true; s.type = 'text/javascript'; s.src = 'catalog/view/theme/default/javascript/bus_critical.js'; var ss = document.getElementsByTagName('script')[0]; ss.parent…

    • 0

      Баллы репутации

    • 0 ответов
    • 522 просмотра
  22. модуль добавляющий вывод артикула как в карточку товара так и в админку: просмотр заказа и печать счёта ОС 2.2 SKU_on_product_page_and_order_2.0.ocmod.zip

    • 0

      Баллы репутации

    • 0 ответов
    • 417 просмотров
  23. Например если у товара стоит в артикуле UPC=0 то добавлялась приставка от к цене. Чтоб цена не заменялась, а просто добавлялась приставка от. для страницы товара контроллер catalog/controller/product/product.php найти if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $data['price'] = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $data['price'] = false; } после добавить if($product_info['upc'] == 0){ …

    • 0

      Баллы репутации

    • 0 ответов
    • 485 просмотров
  24. Started by admin,

    Иной раз бывает так что имеется длинный (очень длинный) список <div class="wrap"> <ul> <li>.......</li> <li>.......</li> <li>.......</li> <li>.......</li> <li>.......</li> <li>.......</li> <li>.......</li> <li>.......</li> <li>.......</li> <li>.......</li> <li>.......</li> </ul> </div> и хотелось бы его разделить на две колонки Решается вопрос средствами css .wrap ul { list-style-position: inside; -moz-column-count: 2; /* Firefox */ -webkit-column-…

    • 0

      Баллы репутации

    • 0 ответов
    • 516 просмотров
  25. Очень часто на сайтах с большим количеством контента посетитель теряется на странице и чтобы найти навигационное меню приходится листать на самый верх страницы. Технологии не стоят на месте, экраны мониторов и их разрешения становятся больше, потому сейчас на сайте уже не жалко выделить сверху 40 пикселей под фиксированное меню при прокрутке страницы сайта. Посетитель сможет всегда видеть в каком он разделе находится, а также иметь быстрый доступ к навигационному меню. В конце концов это увеличивает глубину просмотра сайта Какова суть фиксированного навигационного меню на сайте? Изначально наше меню находится на привычном ему месте, где-то в шапке, в моем слу…

    • 0

      Баллы репутации

    • 1 ответ
    • 487 просмотров

Последние посетители 0

  • Ни одного зарегистрированного пользователя не просматривает данную страницу

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.