Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

alex0410

Новачок
  
  • Публікації

    40
  • З нами

  • Відвідування

Усі публікації користувача alex0410

  1. Отлично, прям то, что нужно! Как раз планируются коллекции. А разработчик вы? Хотел уточнить по поводу категорий, у вас есть этот ocmod или в админке это можно будет так настроить, или мы сами будем доделывать? Объясните подробнее пожалуйста. Можно в личку.
  2. в общем что то вроде фильтрации подкатегорий. а товары удалю из нужных категорий, точнее им будем другой дизайн/схема
  3. Нет, не так поняли или я не так объяснил. к примеру: есть категория -Главная, в ней есть подкатегории - подкатегория1, подкатегория2 и т.п. в них есть товары - товар1, товар2 и т.п. далее заходим в категорию Главная, выбираем фильтровать по каким то значениям и нам показывает те товары, в которых есть эти значения(атрибуты, опции и т.п.). а нужно, что бы при фильтрации показывало подкатегории тех товаров, в которых есть эти значения. что бы не показывало товары вообще (это я могу сделать через схемы, дизайн и мелкие правки) что бы при фильтрации показывало не товары, а подкатегории, в которых есть эти товары подходящие под фильтрацию. не знаю как объяснить по другому(
  4. Здравствуйте. В общем необходимо, что бы при фильтрации товаров на странице категорий, фильтр показывал не товары подходящие под результат, а категории в которых находятся данные товары подходящие по результат. Не знаю, как правильно выразился или нет. В общем может кто то видел похожий модуль. Или может кто то подскажет, как вывести подкатегории в список товаров. Имею ввиду блок с товаром, там - фото товара, цена и т.п. и туда же вывести главную категорию указанную в настройках. А я уже могу убрать все ненужное и оставить только название этой категории и ссылку на нее. Оксторе 3. Заранее спасибо за ответ!
  5. Спасибо за помощь. Но не подходит. Вывел по вашему пример. Для двойки делал так $data['parent_link'] = $this->url->link('product/category', '&path='.$parent_category_id); Выводит ссылку. Но нужно название категории. И у меня чпу с товарами и категориями не стоит. Имею ввиду, ссылка товаров домен.ком/товар и там хлебных крошек нет. Только Главная - Товар Но спасибо и за такую помощь!
  6. Добрый день. В общем не могу никак понять, как можно вывести название главной категории в подкатегории. Делаю описание в категории, что то вроде - Искали $heading_title... Но есть производители, которые делают разный ассортимент (процессоры, мат платы и оперативки). А хотелось бы что то вроде - искали $glavnaya_cat $heading_title... что бы получилось -искали процессоры AMD... Или искали видеоадаптеры amd... В гугле искал( Может кто подскажет, в какую сторону копать?
  7. Смысл был такой - создаем менеджера и он сможет заходить только в тот магазин, который будет указан http://prntscr.com/n5fm6i В итоге сделал проще обошлось правками в system/library user.php Все работает. Зайти могут только в свой магазин под одними и данными. Используем мультисайты с одной базой. Правда через попу, лучше бы через ocmod наверно
  8. Добрый день. Делал доп поле для входа в админку. В итоге оно будет скрыто и заполнятся по store_id. Делал так в admin/controller/common if (isset($this->request->post['store_id'])) { $data['store_id'] = $this->request->post['store_id']; } else { $data['store_id'] = ''; } if (isset($this->request->post['username'])) { $data['username'] = $this->request->post['username']; } else { $data['username'] = ''; } if (isset($this->request->post['password'])) { $data['password'] = $this->request->post['password']; } else { $data['password'] = ''; } в login.tpl добавил после <form> <div class="form-group"> <label for="input-store_id">Магазин</label> <div class="input-group"><span class="input-group-addon"><i class="fa fa-user"></i></span> <input type="text" name="store_id" value="<?php echo $store_id; ?>" placeholder="Магазин" id="input-store_id" class="form-control" /> </div> </div> в system/library user.php изменил, стало так public function login($username, $password, $store_id) { $user_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "user WHERE store_id = '" . $this->db->escape($store_id) . "' AND username = '" . $this->db->escape($username) . "' AND (password = SHA1(CONCAT(salt, SHA1(CONCAT(salt, SHA1('" . $this->db->escape($password) . "'))))) OR password = '" . $this->db->escape(md5($password)) . "') AND status = '1'"); И в итоге выходит Warning: Missing argument 3 for User::login(), called in и Undefined variable: store_id in На сколько я понял не передается $store_id, подскажите, где допустил ошибку или где то еще обрабатывается?
  9. Теперь не могу сделать вывод только статей для одного магазина так же, как и заказы( Сделал так - в модели public function getIid() { $sql = "SELECT information_id, store_id FROM " . DB_PREFIX . "information_to_store WHERE store_id = 0"; $query = $this->db->query($sql); return $query->rows; } в контроллере $this->load->model('catalog/information'); $results = $this->model_catalog_information->getIid(); foreach ($results as $result) { $data['iid'] = array( 'inf_id' => $result['information_id'] ); } в шаблоне вывод <?php if($iid['inf_id'] == $information['information_id']){ ?> Работает, но выводит только одно значение. Я так понимаю, что дело в модели, подскажите, что там не так сделал и почему только одно значение выводит?
  10. Решил проблему, добавил новую функцию public function getSid() { $query = $this->db->query("SELECT store_id FROM " . DB_PREFIX . "store"); return $query->row['store_id']; } На сколько правильно не знаю. Можно закрывать)
  11. В общем сложновато все) Подсмотрел в order_form.tpl Там есть $store_id. эту текущего магазина как я понял. <?php foreach ($stores as $store) { ?> <?php if ($store['store_id'] == $store_id) { ?> <option value="<?php echo $store['href']; ?>" selected="selected"><?php echo $store['name']; ?></option> <?php } else { ?> <option value="<?php echo $store['href']; ?>"><?php echo $store['name']; ?></option> <?php } ?> <?php } ?> На страницу всех заказов добавил переменную, что бы получать у каждого заказа store_id. Выводит, работает. Но теперь не могу вывести store_id магазина, в котором мы находимся. В общем хочу добавить после <?php if ($orders) { ?> <?php foreach ($orders as $order) { ?> сравнение, если $order['order_id'] = $store_id, то дальше выводим. Подскажите, как получить этот айди? На что ума хватило это $this->load->model('setting/store'); $data['store_id'] = $this->model_setting_store->getStore(); Но ошибки лезут.
  12. Добрый день. Создали два магазина через Управление магазинами. Но сейчас создали заказ и он выводится в админке одного, и другого. Подскажи, как можно сделать, что бы выводились заказы только того магазина, через который заказали. Видел на просторах интернета модуль Менеджеры что ли назывался, но он не подходит по версии. У меня ocstore 2.1 Возможно есть модуль какой то? Буду благодарен за любую помощь.
  13. Не нужно это исправлять. Картинки не залились везде, плюс не ставили картинку по умолчанию, если нет фото. Пункты только те, что написал выше. Лишних доработок не будет.
  14. ссылка на опенкарт 3 https://bit.ly/2FsZR5g ссылка на опенкарт 1.5 с которого переносим https://bit.ly/2T1sWbr
  15. Добрый вечер. Начали перенос сайта с 1.5 на 3. Товары, категории и прочее перенесли. Дизайн скопировали частично. Предыдущий программист пропал. Что осталось доделать: хлебные крошки, мини корзина, при добавлении товара обновляет количество в корзине, но при нажатии на иконку все равно пишет - корзина пуста, при добавлении товара всплывает окно, не закрывается на Х на странице товара (в категориях все нормально), страницу оформления полностью как на нашем опенкарт 1.5. Цена 2500руб. Оплата предпочтительно на яндекс. Пишите сроки и вопросы в личку.
  16. Добрый день. Установил модуль продавцов. Но никак не могу разобраться, хочу вывести в категории вместо товаров, продавцов у которых есть товары в данной категории. Но там вообще жуть...) Подскажите пожалуйста, как вывести хотя бы Информацию о продавце. Код которые выводит информацию на странице продукта: <operation> <search position="after"><![CDATA[ if ($product_info) { ]]></search> <add><![CDATA[ $this->document->addScript('catalog/view/javascript/dialog-sellercontact.js'); $this->document->addStyle('catalog/view/theme/' . $this->config->get('config_template') . '/stylesheet/multiseller.css'); $data = array_merge($data, $this->load->language('multiseller/multiseller')); $this->load->model('localisation/country'); $this->load->model('localisation/zone'); $this->load->model('tool/image'); $seller_id = $this->MsLoader->MsProduct->getSellerId($this->request->get['product_id']); $seller = $this->MsLoader->MsSeller->getSeller($seller_id); if (!$seller) { $data['seller'] = NULL; } else { $data['seller'] = array(); if (!empty($seller['ms.avatar'])) { $data['seller']['thumb'] = $this->MsLoader->MsFile->resizeImage($seller['ms.avatar'], $this->config->get('msconf_seller_avatar_product_page_image_width'), $this->config->get('msconf_seller_avatar_product_page_image_height')); } else { $data['seller']['thumb'] = $this->MsLoader->MsFile->resizeImage('ms_no_image.jpg', $this->config->get('msconf_seller_avatar_product_page_image_width'), $this->config->get('msconf_seller_avatar_product_page_image_height')); } $country = $this->model_localisation_country->getCountry($seller['ms.country_id']); if (!empty($country)) { $data['seller']['country'] = $country['name']; } else { $data['seller']['country'] = NULL; } $zone = $this->model_localisation_zone->getZone($seller['ms.zone_id']); if (!empty($zone)) { $data['seller']['zone'] = $zone['name']; } else { $data['seller']['zone'] = NULL; } if (!empty($seller['ms.company'])) { $data['seller']['company'] = $seller['ms.company']; } else { $data['seller']['company'] = NULL; } if (!empty($seller['ms.website'])) { $data['seller']['website'] = $seller['ms.website']; } else { $data['seller']['website'] = NULL; } $data['seller']['nickname'] = $seller['ms.nickname']; $data['seller']['seller_id'] = $seller['seller_id']; $data['seller']['href'] = $this->url->link('seller/catalog-seller/profile', 'seller_id=' . $seller['seller_id']); $data['seller']['total_sales'] = $this->MsLoader->MsSeller->getSalesForSeller($seller['seller_id']); $data['seller']['total_products'] = $this->MsLoader->MsProduct->getTotalProducts(array( 'seller_id' => $seller['seller_id'], 'product_status' => array(MsProduct::STATUS_ACTIVE) )); $data['contactForm'] = $this->MsLoader->MsHelper->renderPmDialog($data); } $data['ms_product_attributes'] = $this->MsLoader->MsAttribute->getProductAttributes($this->request->get['product_id'], array('multilang' => 0, 'attribute_type'=> array(MsAttribute::TYPE_TEXT, MsAttribute::TYPE_TEXTAREA, MsAttribute::TYPE_DATE, MsAttribute::TYPE_DATETIME, MsAttribute::TYPE_TIME), 'mavd.language_id' => 0)); $data['ms_product_attributes'] = array_merge($data['ms_product_attributes'], $this->MsLoader->MsAttribute->getProductAttributes($this->request->get['product_id'], (array()))); ]]></add> </operation> и это в тпл: <?php if (isset($seller) && !empty($seller)) { ?> <hr /> <div class="ms-sellerprofile description"> <h3><?php echo $ms_catalog_product_sellerinfo; ?></h3> <div class="seller-data"> <div class="avatar-box"> <a href="<?php echo $seller['href']; ?>"><img src="<?php echo $seller['thumb']; ?>" /></a> </div> <div class="info-box"> <ul class="list-unstyled"> <li><a class="nickname" style="text-decoration: none" href="<?php echo $seller['href']; ?>"><b><?php echo $seller['nickname']; ?></b></a></li> <?php if ($seller['country']) { ?> <li><?php echo $ms_catalog_seller_profile_country; ?></b> <?php echo $seller['country']; ?></li> <?php } ?> <?php if ($seller['zone']) { ?> <li><?php echo $ms_catalog_seller_profile_zone; ?></b> <?php echo $seller['zone']; ?></li> <?php } ?> <?php if ($seller['company']) { ?> <li><?php echo $ms_catalog_seller_profile_company; ?></b> <?php echo $seller['company']; ?></li> <?php } ?> <?php if ($seller['website']) { ?> <li><?php echo $ms_catalog_seller_profile_website; ?></b> <?php echo $seller['website']; ?></li> <?php } ?> <li><?php echo $ms_catalog_seller_profile_totalsales; ?></b> <?php echo $seller['total_sales']; ?></li> <li><?php echo $ms_catalog_seller_profile_totalproducts; ?></b> <?php echo $seller['total_products']; ?></li> <?php if ($this->config->get('mmess_conf_enable') || $this->config->get('msconf_enable_private_messaging') == 2) { ?> <?php if ((!$this->customer->getId()) || ($this->customer->getId() != $seller['seller_id'])) { ?> <?php echo $contactForm; ?> <div class="contact"> <?php if ($this->customer->getId()) { ?> <div class="button-group"> <button type="button" class="btn btn-default btn-block ms-sellercontact" data-toggle="modal" data-target="#contactDialog"><span><?php echo $ms_catalog_product_contact; ?></span></button> </div> <?php } else { ?> <?php echo sprintf($this->language->get('ms_sellercontact_signin'), $this->url->link('account/login', '', 'SSL'), $seller['nickname']); ?> <?php } ?> </div> <?php } ?> <?php } ?> </ul> </div> </div> <!-- end sellerinfo --> </div> <hr /> <!-- end seller block --> <?php } ?> как это в контроллер категории прикрутить то? и еще в модель продукта код: <operation> <search position="before" index="1" offset="2"><![CDATA[ ddddreturn $query->row['total']; ]]></search> <add><![CDATA[ $sql_disable = "SELECT p.product_id as 'product_id'"; /* Filters */ if (!empty($data['filter_category_id'])) { if (!empty($data['filter_sub_category'])) { $sql_disable .= " FROM " . DB_PREFIX . "category_path cp LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (cp.category_id = p2c.category_id)"; } else { $sql_disable .= " FROM " . DB_PREFIX . "product_to_category p2c"; } if (!empty($data['filter_filter'])) { $sql_disable .= " LEFT JOIN " . DB_PREFIX . "product_filter pf ON (p2c.product_id = pf.product_id) LEFT JOIN " . DB_PREFIX . "product p ON (pf.product_id = p.product_id)"; } else { $sql_disable .= " LEFT JOIN " . DB_PREFIX . "product p ON (p2c.product_id = p.product_id)"; } } else { $sql_disable .= " FROM " . DB_PREFIX . "product p"; } $sql_disable .= " LEFT JOIN `" . DB_PREFIX . "ms_product` mp ON (p.product_id = mp.product_id)"; $sql_disable .= " 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 pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"; if (!empty($data['filter_category_id'])) { if (!empty($data['filter_sub_category'])) { $sql_disable .= " AND cp.path_id = '" . (int)$data['filter_category_id'] . "'"; } else { $sql_disable .= " AND p2c.category_id = '" . (int)$data['filter_category_id'] . "'"; } if (!empty($data['filter_filter'])) { $implode = array(); $filters = explode(',', $data['filter_filter']); foreach ($filters as $filter_id) { $implode[] = (int)$filter_id; } $sql_disable .= " AND pf.filter_id IN (" . implode(',', $implode) . ")"; } } if (!empty($data['filter_name']) || !empty($data['filter_tag'])) { $sql_disable .= " AND ("; if (!empty($data['filter_name'])) { $implode = array(); $words = explode(' ', trim(preg_replace('/\s\s+/', ' ', $data['filter_name']))); foreach ($words as $word) { $implode[] = "pd.name LIKE '%" . $this->db->escape($word) . "%'"; } if ($implode) { $sql_disable .= " " . implode(" AND ", $implode) . ""; } if (!empty($data['filter_description'])) { $sql_disable .= " OR pd.description LIKE '%" . $this->db->escape($data['filter_name']) . "%'"; } } if (!empty($data['filter_name']) && !empty($data['filter_tag'])) { $sql_disable .= " OR "; } if (!empty($data['filter_tag'])) { $sql_disable .= "pd.tag LIKE '%" . $this->db->escape(utf8_strtolower($data['filter_tag'])) . "%'"; } if (!empty($data['filter_name'])) { $sql_disable .= " OR LCASE(p.model) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; } if (!empty($data['filter_name'])) { $sql_disable .= " OR LCASE(p.sku) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; } if (!empty($data['filter_name'])) { $sql_disable .= " OR LCASE(p.upc) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; } if (!empty($data['filter_name'])) { $sql_disable .= " OR LCASE(p.ean) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; } if (!empty($data['filter_name'])) { $sql_disable .= " OR LCASE(p.jan) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; } if (!empty($data['filter_name'])) { $sql_disable .= " OR LCASE(p.isbn) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; } if (!empty($data['filter_name'])) { $sql_disable .= " OR LCASE(p.mpn) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; } $sql_disable .= ")"; } if (!empty($data['filter_manufacturer_id'])) { $sql_disable .= " AND p.manufacturer_id = '" . (int)$data['filter_manufacturer_id'] . "'"; } $this->language->load('multiseller/multiseller'); $sql_disable .= " AND mp.list_until < NOW() AND p.status = 1"; $res_disable = $this->db->query($sql_disable); if ($res_disable->num_rows) { foreach ($res_disable->rows as $product) { $this->MsLoader->MsProduct->changeStatus((int)$product['product_id'], MsProduct::STATUS_DISABLED); $this->MsLoader->MsProduct->disapprove((int)$product['product_id']); $seller_id = $this->MsLoader->MsProduct->getSellerId((int)$product['product_id']); $mail = array( 'recipients' => $this->MsLoader->MsSeller->getSellerEmail($seller_id), 'addressee' => $this->MsLoader->MsSeller->getSellerName($seller_id), 'seller_id' => $seller_id, 'product_id' => (int)$product['product_id'] ); $this->MsLoader->MsMail->sendMail(MsMail::SMT_REMIND_LISTING, $mail); } } ]]></add> </operation> Заранее спасибо за потраченное время.
  17. Добрый день. Подскажите пожалуйста. Хочу добавить возможность доп отправки письма из админки тут http://prntscr.com/iyv8qc Кнопку вывел так : <div class="form-group"> <label class="col-sm-2 control-label">Отправить письмо опрос (Ваше мнение)</label> <div class="col-sm-10"> <input type="checkbox" name="notify2" value="1" /> </div> </div> И изменил в этом же файле js на это: data: 'order_status_id=' + encodeURIComponent($('select[name=\'order_status_id\']').val()) + '&notify=' + ($('input[name=\'notify\']').prop('checked') ? 1 : 0) + '&notify2=' + ($('input[name=\'notify2\']').prop('checked') ? 1 : 0) + '&override=' + ($('input[name=\'override\']').prop('checked') ? 1 : 0) + '&append=' + ($('input[name=\'append\']').prop('checked') ? 1 : 0) + '&comment=' + encodeURIComponent($('textarea[name=\'comment\']').val()), Добавил в admin/model/sale/order.php следующее: $nt=0; if(isset($data['notify2'])) { $nt=(int)$data['notify2']; } if($nt) { $subject='Ваше мнение о работе компании'; $html='<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title></title> </head> <body style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #000000;"> <div>Мой текст</div> </body> </html> '; $mail = new Mail(); $mail->protocol = $this->config->get('config_mail_protocol'); $mail->parameter = $this->config->get('config_mail_parameter'); $mail->smtp_hostname = $this->config->get('config_mail_smtp_hostname'); $mail->smtp_username = $this->config->get('config_mail_smtp_username'); $mail->smtp_password = html_entity_decode($this->config->get('config_mail_smtp_password'), ENT_QUOTES, 'UTF-8'); $mail->smtp_port = $this->config->get('config_mail_smtp_port'); $mail->smtp_timeout = $this->config->get('config_mail_smtp_timeout'); $mail->setTo($order_info['email']); $mail->setFrom($this->config->get('config_email')); $mail->setSender(html_entity_decode($order_info['store_name'], ENT_QUOTES, 'UTF-8')); $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8')); $mail->setHtml($html); $mail->setText($text); $mail->send(); unset($subject); unset($html); } Что я упустил? Самое интересное то, что в опенкарт 1.5 работает нормально подобная кнопка. Проблема видимо в том, что там я добавил после public function addOrderHistory. А в опенкарт 2.1 такого не вижу. Подскажи люди добрые)
    Купили, шаблон не дефолтный, помощи в установке нет. Написал в личку, дал доступы, после этого молчание, на сайте онлайн, личку читает, ответа нет. Слился.
  18. Добрый день. Подскажите, как можно вывести кастомное поле в админке или киньте ссылку на какую нибудь документацию, где хоть как нибудь описано (в контроллер нужно такое то, в модель такое то). Сами поля в базу создаются по кнопке, но не могу их вывести теперь для заполнения. Буду благодарен за любую помощь. Версия ocStore 2.3
  19. Хорошо, я вам завтра напишу, как установим ocstore.
  20. Хорошо, спасибо. Значит завтра все таки поставим на ocstore. Все равно у нас еще чистый опенкарт и если делать, то уже что б эти ссылки работали) И сколько будет стоить ваше дополнение? Что б ссылки к товарам были как писали выше.
  21. в ocstore значит можно такое сделать? Кажется там есть сео про.
  22. Опенкарт Version 2.1.0.2 (trs.2.0.3.0) Из сео модулей ничего не ставили вообще, опенкарт чистый.
  23. А может вы сделаете ocmod? И на продажу, я бы сразу купил, хоть завтра

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.