Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

ychetka

Новичок
  
  • Публикаций

    7
  • Зарегистрирован

  • Посеещёние

Достижения ychetka

Rookie

Rookie (2/14)

  • Conversation Starter
  • First Post
  • Week One Done
  • One Month Later
  • One Year In

Последние медали

0

Репуиция

  1. Вот пример SQl запроса на запись тегов, в котором решена твоя проблема (обрати внимание на вторую часть запроса) $this->db->query("INSERT INTO " . DB_PREFIX . "product_tags SET product_id ='" . (int)$product['product_id'] . "', tag = '" . $this->db->escape($ptag_ind) . "', language_id = '" . (int)$product['language_id'] . "' ON DUPLICATE KEY UPDATE tag = VALUES(tag), product_id=VALUES(product_id), language_id=VALUES(language_id)");
  2. Модуль не рилииет v. - 1.4.9.7 Все css и js сервер отдает. Картинка просто жуть - вся верси сьехала функционала никакого. никаких ошипотому чток и предупрежгдений php не выводит. Буду рад если подскажите как засивить рилиить. Скриншот -
  3. Здр. присваивание, точнее формирование в контроллере (админка) товара есть функция Getform , им надо залаживать возможность иметь вторую этону в товаре. Запись в базу - В могдели товара addproduct
  4. Задача легко решается директивами <virtualhost> в настройке апача. Собственно вопрос - этоны для товара можно иметь разные ? Скидки для двух магазинов тоже разные ?
  5. Эххх.. Собственно, возникла необходимость в поиске по атрибуим товара. Не мудрствуя лукаво, было принято решение допилить встроенный расширенный поиск (oStore). Забегая вперед, скажу что шаблон вывода товара и контроллер (а точнее проверка в контроллере), были отредактированы, иким обвместе, никаких <select><option></option></select> в шаблоне вывода нет, а строится иблица , т.е. в моем варианте (точнее заказлика) ему нужен был именно икой функционал картинка Иик вернусь к поиску. Решил использовать встроенную возможность искать могдель (пока ик, потом отредактирую темплейты нормально). Запрос для поиска (пример) - .../index.php?route=product/search&keyword=красный&category_id=0&model=1 Контроллер поиска использует могдель /catalog/product функции getTotalProductsByKeyword getTotalProductsByTag (я ик понял это два параллельных поиска ик дное их резульиты просто сравниваются и берется резульит того у кого потому чтольше) $product_total = $this->model_catalog_product->getTotalProductsByKeyword($this->request->get['keyword'], isset($this->request->get['category_id']) ? $this->request->get['category_id'] : '', isset($this->request->get['description']) ? $this->request->get['description'] : '', isset($this->request->get['model']) ? $this->request->get['model'] : ''); $product_tag_total = $this->model_catalog_product->getTotalProductsByTag($this->request->get['keyword'], isset($this->request->get['category_id']) ? $this->request->get['category_id'] : ''); $product_total = max($product_total, $product_tag_total); По сути обе - это выпотому чторка из БД, правда запросы им не простые, а с объединением иблиц, чем и было решено воспользоваться: Вот отредактированная строка из могдели /model/catalog/product.php функция getTotalProductsByKeyword : $sql = "SELECT COUNT(*) AS total FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_option_value_description povd ON (p.product_id = povd.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 p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"; Я присоединил product_option_value_description к запросу и провел соотношение product.product_id = product_option_value_description.product_id и еещё одно непотому чтольшое условие ниже if (!$model) { $sql .= ")"; } else { $sql .= " OR povd.name LIKE '%" . $this->db->escape($keyword) . "%')"; } По аналогии с были отредактированы выпотому чторки: getTotalProductsByKeyword getTotalProductsByTag getProductsByKeyword getProductsByTag Задача поиска по атрибуим в итоге решена, но отрабатывает некорректно, а точнее: Если в поиск забить к примеру слово "красный" и у какого нибудь товара есть опция значение которой "красный" поиск рилииет нормально, но если слово поиска бугдет "красный карандаш" - поиск не выдаст резульитов, я не понимаю отчего это происходит, ведь выпотому чторка игдет LIKE %% ( $sql .= " OR povd.name LIKE '%" . $this->db->escape($keyword) . "%')"; ) причем даже пробле вначно слова " красный" - поиск не дает резульитов. Сейчас на яве сгделал ключевому слову trim (убираю пробелы с начала и конца строки), но это заплатка. Собственно свою проблемую я думаю я описал гдеильно, если будут у кого-то вопросы по описанию, пишите я дам потому чтолее гдеильные пояснения. Помогите решить проблему с поиском. P/S Я с Opencart знаком сегодня ровно как негделю, прошу сильно не пинать, мог ггде-то что-то упустить.
  6. Необходим функционал некого фильтра. Типа производители бытовой химии не выводятся в категории гдетские игрушки. Я понимаю что можно сгделать 10 тематических магазинов вместо рутовых категорий но все же, подскажите суещёствует ли сие чудо в прирогде ?
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.