Jump to content
покупайте без комиссии
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

[Поддержка] featured_cron (основан на стандартном модуле "featured")


Recommended Posts

featured_cron (основан на стандартном модуле "featured")


Модуль основан на стандартном "featured". Позволяет формировать список товаров для отображения по CRON заданию. 

Выборку можно настроить - указать из каких групп и сколько товаров брать.

Модуль устанавливается стандартно через OCMOD.

 

Инструкция по настройке:

Шаг 1:

Установите модуль через стандартный менеджер дополнений;

Шаг 2:

Включите и настройте модуль. При помощи крестика добавте категории в которых нужно проводить выборку. Галочка "только с изображениями" будет проводить выборку только по товарам у которых есть картинка. Галочка "Только нулевые" позволяет выводить только те товары, колличество которых 0. "Колличество" отвечает за то, сколько товаров из этой группы будет показано в выборке.

Шаг 3:

Добавте задание cron "адрес_сайта/cron/rand_tov_cron.php"

-----

Системные требования:
- PHP 5.6 или выше;
- curl;

 

Модуль написан мной для личного использования. И выложен на общее обозрение лишь с целью "а вдруг кому тоже пригодиться". Всё тестировалось на ocStore 2.3 со стандартным шаблоном. Однако не могу исключать, что в шаблон или движок я не вносил изменения. Так что по всем вопросам пишите, вместе разберёмся и запустим.

featured_cron.png


  • Добавил
  • Добавлено
    15.08.2018
  • Категория
  • Системные требования
  • Метод активации
    Без активации
  • Ioncube Loader
    Нет
  • OpenCart
    2.3
  • ocStore
    2.3
  • OpenCart.Pro, ocShop
  • Обращение к серверу разработчика
    Нет
  • Старая цена

 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Similar Content

    • By Alexandr15
      Подскажите пожалуйста как в opencart 3 в стандартном (базовом) модуле featured вывести опции товаров
      В файл: modification\catalog\controller\extension\module\featured.php
      добавил код:
      $options = array(); foreach ($this->model_catalog_product->getProductOptions($result['product_id']) as $option) { if($option['required']){ $product_option_value_data = array(); foreach ($option['product_option_value'] as $option_value) { if (!$option_value['subtract'] || ($option_value['quantity'] >= 0)) { $product_option_value_data[] = array( 'product_option_value_id' => $option_value['product_option_value_id'], 'option_value_id' => $option_value['option_value_id'], 'name' => $option_value['name'], 'image' => $this->model_tool_image->resize($option_value['image'], 50, 50), 'quantity' => $option_value['quantity'], 'price_prefix' => $option_value['price_prefix'] ); } } $options[] = array( 'product_option_id' => $option['product_option_id'], 'product_option_value' => $product_option_value_data, 'option_id' => $option['option_id'], 'name' => $option['name'], 'type' => $option['type'], 'value' => $option['value'], 'required' => $option['required'] ); } } Также в $data['products'][] = array(
      добавил:
      'options' => $options, Для вывода в файле: template\extension\module\featured.twig
      в карточку товара добавил код:
      {% if product.options %} {% for option in product.options %} {% if option.type == 'radio' %} <div class="groupOptionWrap {% if option.required %} required {% endif %}"> <div id="input-option{{ option.product_option_id }}" class='groupOptionElements'> {% for option_value in option.product_option_value %} {% if option_value.quantity == "0" %} <div class="groupOption groupOptionDisable"> {{ option_value.name }} </div> {% else %} <div class="groupOption"> {{ option_value.name }} </div> {% endif %} {% endfor %} </div> </div> {% endif %} {% endfor %} {% endif %} Но это не сработало, просьба подсказать, если кто знает рабочий вариант
      Весь код данного модуля:
      <?php class ControllerExtensionModuleFeatured extends Controller { public function index($setting) { $this->load->language('extension/module/notify_when_available'); $data['text_out_of_stock'] = $this->language->get('text_out_of_stock'); $data['out_of_stock_show'] = $this->config->get('module_notify_when_available_stock'); $data['out_of_stock_notify'] = $this->config->get('module_notify_when_available_notify'); $this->load->language('extension/module/featured'); $this->load->model('catalog/product'); $this->load->model('tool/image'); $data['products'] = array(); if (!$setting['limit']) { $setting['limit'] = 4; } if (!empty($setting['product'])) { $lang = $this->config->get('config_language_id'); $title = isset($setting['titles']['title'.$lang]) && $setting['titles']['title'.$lang] ? $setting['titles']['title'.$lang] : ''; if (isset($title) && $title) { $data['heading_title'] = $title; } if (isset($setting['shuffle']) && $setting['shuffle']) { shuffle($setting['product']); } $products = array_slice($setting['product'], 0, (int)$setting['limit']); foreach ($products as $product_id) { $product_info = $this->model_catalog_product->getProduct($product_id); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $setting['width'], $setting['height']); } else { $image = $this->model_tool_image->resize('placeholder.png', $setting['width'], $setting['height']); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); $data['priceInt'] = $this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')); } else { $price = false; } $specialSavings =0; 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')), $this->session->data['currency']); $data['specialInt'] = $this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')); $data['specialSavings'] = round((($data['priceInt']-$data['specialInt'])/$data['priceInt'])*100, 2); $specialSavings = $data['specialSavings']; } else { $special = false; } if ($this->config->get('config_tax')) { $tax = $this->currency->format((float)$product_info['special'] ? $product_info['special'] : $product_info['price'], $this->session->data['currency']); } else { $tax = false; } if ($this->config->get('config_review_status')) { $rating = $product_info['rating']; } else { $rating = false; } $options = array(); foreach ($this->model_catalog_product->getProductOptions($result['product_id']) as $option) { if($option['required']){ $product_option_value_data = array(); foreach ($option['product_option_value'] as $option_value) { if (!$option_value['subtract'] || ($option_value['quantity'] >= 0)) { $product_option_value_data[] = array( 'product_option_value_id' => $option_value['product_option_value_id'], 'option_value_id' => $option_value['option_value_id'], 'name' => $option_value['name'], 'image' => $this->model_tool_image->resize($option_value['image'], 50, 50), 'quantity' => $option_value['quantity'], 'price_prefix' => $option_value['price_prefix'] ); } } $options[] = array( 'product_option_id' => $option['product_option_id'], 'product_option_value' => $product_option_value_data, 'option_id' => $option['option_id'], 'name' => $option['name'], 'type' => $option['type'], 'value' => $option['value'], 'required' => $option['required'] ); } } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'quantity' => $result['quantity'], 'quantity' => $product_info['quantity'], 'quantity' => isset($result['quantity']) ? $result['quantity'] : (isset($product_info['quantity']) ? $product_info['quantity'] : 1), 'attribute_groups' => $this->model_catalog_product->getProductAttributes($product_info['product_id']), 'thumb' => $image, 'name' => $product_info['name'], 'description' => utf8_substr(strip_tags(html_entity_decode($product_info['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'specialSavings' => $specialSavings, 'tax' => $tax, 'rating' => $rating, 'options' => $options, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']) );  
       
    • By devrvk
      Скачать/Купить дополнение


      Страница "Все рекомендуемые товары"
      С помощью данного модуля появляется страница, на которой выводятся все товары из модуля "Рекомендуемые".
      Тестировалось на Opencart 1.5.6.4 и Opencart 2.0.3
      Демо
      2.0.x
      1.5.x
      Установка
      Скопируйте каталог "catalog" их архива в корень Вашего сайта.
      ВНИМАНИЕ!!! При копировании происходит замена модели "catalog/model/catalog/product.php", если Вы не хотите заменять данную модель вставьте следующий код в модель "catalog/model/catalog/product.php" перед последней закрывающей "}":
      // FOR FEATURED PAGEpublic function getProductFeatured($pid = array(), $data = array()) {if ($this->customer->isLogged()) {$customer_group_id = $this->customer->getCustomerGroupId();} else {$customer_group_id = $this->config->get('config_customer_group_id');} $sql = "SELECT DISTINCT p.product_id, (SELECT AVG(rating) FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE p.status = '1'";$sql .= " AND p.product_id IN (" . implode(',', $pid) . ")";$sql .= " AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' GROUP BY p.product_id";$sort_data = array('pd.name','p.model','p.price','rating','p.sort_order');if (isset($data['sort']) && in_array($data['sort'], $sort_data)) {if ($data['sort'] == 'pd.name' || $data['sort'] == 'p.model') {$sql .= " ORDER BY LCASE(" . $data['sort'] . ")";} else {$sql .= " ORDER BY " . $data['sort'];}} else {$sql .= " ORDER BY p.sort_order"; }if (isset($data['order']) && ($data['order'] == 'DESC')) {$sql .= " DESC, LCASE(pd.name) DESC";} else {$sql .= " ASC, LCASE(pd.name) ASC";}if (isset($data['start']) || isset($data['limit'])) {if ($data['start'] < 0) {$data['start'] = 0;} if ($data['limit'] < 1) {$data['limit'] = 20;} $sql .= " LIMIT " . (int)$data['start'] . "," . (int)$data['limit'];}$product_data = array();$query = $this->db->query($sql);foreach ($query->rows as $result) { $product_data[$result['product_id']] = $this->getProduct($result['product_id']);}return $product_data;}/// // FOR FEATURED PAGE
      Добавил devrvk Добавлено 01.12.2015 Категория Модули  
    • By devrvk
      С помощью данного модуля появляется страница, на которой выводятся все товары из модуля "Рекомендуемые".
      Тестировалось на Opencart 1.5.6.4 и Opencart 2.0.3
      Демо
      2.0.x
      1.5.x
      Установка
      Скопируйте каталог "catalog" их архива в корень Вашего сайта.
      ВНИМАНИЕ!!! При копировании происходит замена модели "catalog/model/catalog/product.php", если Вы не хотите заменять данную модель вставьте следующий код в модель "catalog/model/catalog/product.php" перед последней закрывающей "}":
      // FOR FEATURED PAGEpublic function getProductFeatured($pid = array(), $data = array()) {if ($this->customer->isLogged()) {$customer_group_id = $this->customer->getCustomerGroupId();} else {$customer_group_id = $this->config->get('config_customer_group_id');} $sql = "SELECT DISTINCT p.product_id, (SELECT AVG(rating) FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE p.status = '1'";$sql .= " AND p.product_id IN (" . implode(',', $pid) . ")";$sql .= " AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' GROUP BY p.product_id";$sort_data = array('pd.name','p.model','p.price','rating','p.sort_order');if (isset($data['sort']) && in_array($data['sort'], $sort_data)) {if ($data['sort'] == 'pd.name' || $data['sort'] == 'p.model') {$sql .= " ORDER BY LCASE(" . $data['sort'] . ")";} else {$sql .= " ORDER BY " . $data['sort'];}} else {$sql .= " ORDER BY p.sort_order"; }if (isset($data['order']) && ($data['order'] == 'DESC')) {$sql .= " DESC, LCASE(pd.name) DESC";} else {$sql .= " ASC, LCASE(pd.name) ASC";}if (isset($data['start']) || isset($data['limit'])) {if ($data['start'] < 0) {$data['start'] = 0;} if ($data['limit'] < 1) {$data['limit'] = 20;} $sql .= " LIMIT " . (int)$data['start'] . "," . (int)$data['limit'];}$product_data = array();$query = $this->db->query($sql);foreach ($query->rows as $result) { $product_data[$result['product_id']] = $this->getProduct($result['product_id']);}return $product_data;}/// // FOR FEATURED PAGE  
    • By balukoff
      Скачать/Купить дополнение Стрелки изменения порядка товаров в модуле "Рекомендуемые"
      Обработка добавляет стрелки к стандартному модулю "Рекомендуемые" в административной части opencart для изменения порядка товаров в списке.
      Например, нам нужно, чтобы товар Ipad был выше iMac, но тогда приходится удалять весь список и проходить всю операцию добавления. Однако модуль эту проблему решает.
      Необходим vqmod.
      - Не меняет исходные файлы
      - Использует "легкую" модель изменения DOM-структуры "на лету"
      - Сохранение модуля и вывод в шаблон - в стандартном режиме
      - Возможны доработки и обновления
      - Тестировалось на opencart/ocstore 1.5.x
      - Добавлена поддержка opencart 2.x
      Установка: просто поместите файл featured.xml в каталог vqmod\xml на Вашем сервере
      Для версии 2.x неоходимо установить модификатор через панель администрирования
      Добавил balukoff Добавлено 01.12.2015 Категория Прочее  
    • By OCdevWizard
      1100 15
      Скачать/Купить дополнение


      Рекомендуемые товары
      Рекомендуемые товары - это модуль, который позволяет создавать неограниченное количество модулей с различными наборами продуктов. Модуль можно использовать для создания таких модулей, как «Новинки», «Хиты продаж», продукты из выбранных категорий и многие другие настройки. Также вы можете создавать SEO страницы с набором продуктов. Этот модуль работает как модуль up-sell/cross-sell с гораздо более совершенной системой конфигурации.
       
      Уважаемые покупатели. На demo сайте за частую отображена только часть функционала, которую выполняет модуль, так как тяжело спрогнозировать то что нужно будет вам. По этому пожалуйста если у вас есть вопросы по работе модуля или у вас есть конкретная задача но вы сомневаетесь поможет ли её решить модуль то я рекомендую вам спросить об этом на странице поддержки модуля или же написать мне личное сообщение.
       
      ❖ ПРЕИМУЩЕСТВО НАД ТЕМАТИЧЕСКИМИ МОДУЛЯМИ
          ➥ управление модулем выполнено на одной странице.
          ➥ редактирование параметров модуля выполняется без перезагрузки страницы.
          ➥ удобная система push уведомлений для панели управления модуля.
          ➥ возможность экспорта и импорта настроек модуля.
          ➥ возможность редактирования файла стилей модуля через панель управления модуля.
          ➥ возможность сжимать основной JS файл скриптов модуля.
          ➥ возможность создавать неограниченное количество модулей с набором продуктов.
          ➥ возможность создавать SEO страницы с набором продуктов.
          ➥ модуль не содержит файлов, в которых код зашифрован или обфусцирован.
       
      ❖ НЕМНОГО О ЦИФРАХ
          ➥ в состав модуля входит свыше 125 файлов.
          ➥ общий размер файлов меньше 0.8Mb (без сжатия).
          ➥ модуль переведен на 3 языка (English, Украинский, Русский).
          ➥ свыше 105 параметров настройки модуля.
       
      ❖ СПИСОК ВОЗМОЖНОСТЕЙ
      ❏ Модуль
          ➥ доступно 4 вида отображения модулей: статический модуль, статический модуль с вкладками, SEO страница, виджет для модуля "OCdevWizard Cart" и модуль для страницы корзины.
          ➥ доступно 4 вида отображения товаров: вертикальный список, карусель с одним элементом, горизонтальная сетка, горизонтальная карусель.
          ➥ возможность выбрать, какие продукты отображать: выбрать товары из категорий, выбрать товары из брендов, отображать выбранные товары, отображать новые товары, отображать наиболее продаваемые товары, отображать товары с акционной ценой, отображать наиболее просматриваемые товары, ранее просмотренные товары, товары от бренда что и главный товар, рекомендуемые товары от главного товара, товары из категорий что и главный товар, товары которые покупали с главным товаром.
          ➥ возможность фильтрации товаров по текущей категории или производителю.
          ➥ возможность устанавливать ограничения для набора продуктов: показывать только на выбранных товарах, показывать только на выбранных категориях, показывать только на выбранных брендах, показывать только на выбранных статьях, показывать только на пользовательских GET запросах или части URL в строке браузера.
      ❏ Другое
          ➥ поддержка multi-языков.
          ➥ поддержка multi-магазинов.
          ➥ поддержка RTL или LTR направление текста.
          ➥ модуль требует активацию лицензии.
       
      ❖ DEMO САЙТ
          ➥ Админка: demo / demo | Смотреть
          ➥ Каталог: Смотреть
       
      ❖ СОВМЕСТИМОСТЬ С OPENCART
          ➥ 1.5.5.1, 1.5.6, 1.5.6.1, 1.5.6.2, 1.5.6.3, 1.5.6.4
          ➥ 2.0.0.0, 2.0.1.0, 2.0.1.1, 2.0.2.0, 2.0.3.1, 2.1.0.1, 2.1.0.2, 2.2.0.0, 2.3.0.2
          ➥ 3.0.0.0, 3.0.1.1, 3.0.1.2, 3.0.2.0, 3.0.3.0, 3.0.3.1, 3.0.3.2, 3.0.3.3, 3.0.3.5, 3.0.3.6
       
      ❖ СОВМЕСТИМОСТЬ С OCSTORE
          ➥ 2.1.0.1, 2.1.0.1.1, 2.1.0.2, 2.1.0.2.1, 2.3.0.2, 2.3.0.2.1, 2.3.0.2.2, 2.3.0.2.3, 2.3.0.2.5
       
      ❖ СИСТЕМНЫЕ ТРЕБОВАНИЯ
          ➥ Минимальная версия PHP: 5.4.
          ➥ Модуль не работает на localhost.
       
      ❖ ЛИЦЕНЗИОННОЕ СОГЛАШЕНИЕ
      Приобретая ПО, разработанные OCdevWizard, вы подтверждаете, что прочитали и согласны с условиями этого соглашения. Соглашение вступает в силу с момента покупки ПО, проданного через этот сайт, или получения его по электронной почте или любым другим способом. Если вы не согласны с этими условиями лицензирования, не используйте и/или не покупайте это ПО.
      Покупая ПО от автора OCdevWizard, пользователь соглашается c:
          ➥ Лицензию может предоставлять только автор ПО - OCdevWizard.
          ➥ После покупки ПО покупатель получает не эксклюзивную, не передаваемую, отзывную лицензию без ограничения по времени, по принципу 1 покупка ПО = 1 лицензия.
          ➥ Покупатель имеет право активировать лицензию только на один домен (например http://site.com), а также на не более чем пять под доменов этого же домена (например http://test.site.com или http://site.com/test). Для получения большего количества лицензий нужно произвести покупку ПО равно количеству доменов.
          ➥ В случае смены доменного имени, переезд сайта на другой домен, нужно выполнить покупку и активацию лицензии на этот домен.
          ➥ Активная лицензия дает право на использование обновлений ПО и бесплатной технической поддержки (консультация по настройке ПО и исправление конструктивных ошибок) сроком на 1 год. По окончанию этого периода покупатель имеет право продлить его, выполнив повторную покупку ПО. Само ПО будет работать без изменений, как и до момента окончания этого периода.
          ➥ Вы не можете продавать или перепродавать это ПО без письменного разрешения автора (OCdevWizard).
          ➥ Вы не можете давать в качестве подарка или распространять это ПО без письменного разрешения автора (OCdevWizard).
          ➥ Вы не можете изменять название этого ПО без письменного разрешения автора (OCdevWizard).    
          ➥ Вы не можете представлять это ПО как собственное.
          ➥ Вы не можете использовать или извлекать компоненты ПО для использования их вне файлов ПО.
          ➥ Вы не можете удалять из файлов ПО копирайт автора (OCdevWizard).
          ➥ ПО предоставляется по принципу «AS IS».
      Автор ПО оставляет за собой право вносить изменения в условия данного лицензионного соглашения и изменять его пункты в любое время без дополнительных уведомлений, а также оставляет за собой право прекратить поддержку, отказать в доступе к обновлениям если пользователь нарушает это лицензионное соглашение.
       
      ❖ ПОДДЕРЖКА
          ➥ Пожалуйста, используйте мой сайт технической поддержки клиентов, чтобы запросить помощь или сообщить о ошибке.
          ➥ Пожалуйста, не используйте комментарии для сообщений об ошибках.
          ➥ Платная техническая поддержка выполняется в случаях, когда существует конфликт с внешними модулями/продуктами/шаблонами. Пожалуйста, примите это с пониманием того, что разработчик не может сделать собственный модуль на 100% совместимым со всеми внешними расширениями. Вот почему в некоторых случаях необходимо адаптировать модуль к нестандартной конфигурации и системным настройкам магазина. Поэтому решение таких проблем будет оплачиваться отдельно от стоимости модуля.
       
      ❖ СОВМЕСТИМ И АДАПТИРОВАН
          ➥ HYPER Positions +70 позиций модулей - oc2.3x
       
      ❖ ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ
      ❏ Вы можете напрямую заказать дополнительную услугу после покупки данного модуля:
          ➥ Установка модуля в ваш магазин вместо вас - 1100 руб.
          ➥ Базовая настройка параметров модуля вместо вас - 1100 руб.
          ➥ Помощь в решении проблем совместимости с вашей конфигурацией магазина - 1100 руб.
          ➥ Изменить стиль модуля в соответствии с вашей темой - 1100 руб.
          ➥ Выпуск «пожизненной» лицензии на модуль для вашего домена - 1100 руб.
          ➥ Улучшить/изменить базовую функциональность модуля в соответствии с вашими предпочтениями - индивидуальная цена.
          ➥ Пакет услуг "Услуги+" (включает установку, базовую настройку, устранение проблем совместимости, стилизацию под вашу тему и «пожизненную» лицензию) - 4400 руб.
      Все дополнительные услуги оплачиваются на этой странице.
      Добавил OCdevWizard Добавлено 12.04.2018 Категория Покупки, оформление заказа, корзина Системные требования Минимальная версия PHP: 5.4 Метод активации По запросу в ЛС
      По запросу на почту
      Через официальный сайт дополнения Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.5.1 ocStore 3.0
      2.3
      2.2
      2.1 OpenCart.Pro, ocShop Не проверялось Обращение к серверу разработчика Да Старая цена 0  
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • 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.