Jump to content
Sign in to follow this  
astatium135

Добавление новых связей к товарам

Recommended Posts

Добрый день!

Я пишу сайт книжного интернет-магазина, и у меня возникла проблема. Мне нужно реализовать параметры Издательство, Автор и Серия, с функционалом, аналогичным связи Производитель (вывод списка, поиск по параметру и т.д.).

Подскажите, пожалуйста, самый правильный способ это осуществить, внося минимум костылей. В opencart разбираюсь слабо (смутно представляю, где что искать на уровне контроллер-модель-представление, но ничерта не понимаю в "потрохах" opencart'a), php и mysql знаю хорошо.

Share this post


Link to post
Share on other sites

Штатно без костылей - это аттрибуты.

Дублировать производителей - фильтры работать не будут.

Share this post


Link to post
Share on other sites

Атрибуты - это хорошо. Вот только мне критически важно, чтобы по адресам вида /author/pushkin, /series/voyna_i_mir_peterburgpress открывались страницы с, соответственно, Пушкиным, Войной и Миром издетельства какого-то там пресса и т.д. Самым очевидным кажется добавить к продуктам столбцов, скопировать таблицы и файлы manufacturer и отредактировать их вручную. Но, возможно, есть более умное решение

Share this post


Link to post
Share on other sites

@astatium135 может смотреть  сторону не производителей а категорий?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By plotnikov2708
      Всем привет.
      Добавил все товары тогда, когда был только первый магазин, недавно добавил второй магазин, все товары остались на первом, можно ли как нибудь отметить все товары и на второй магазин тоже, а не вручную отмечать каждый товар, так как товаров больше 800 
    • By evgenylebedevv
      Ищу модуль обратной связи под ocStore 2.3, с функцией автоматической отправки файла клиенту после подтверждения отправки формы или перенаправления на страницу для скачивания файла и с сохранением емаилов клиентов в б.д. 
    • By yonen
      Здравствуйте,
       
      как решить проблему невозможности изменения связей товара после копирования. При создании товара с нуля все работает нормально. При копировании одна связь остается и не меняется при пересохранении карточки товара даже при выборе других. Может быть кто-то сталкивался с этим?
       
      Версия ocStore 2.1.0.2.1
       
      Заранее спасибо
    • By VladSiy
      Здравствуйте. 
      Мог бы кто-нибудь мне помочь написать правильный запрос для выбора нужных товаров? 
       
      Введение:
      - В магазине есть артикулы товара, я использую поле "model"
      - Есть артикул замены, использую поле "sku"
       
      Артикул замены - это артикул аналогичного товара. (поля заполняются вручную в админке)

      Пример:
      Товар №1
      Артикул - xxxxxx
      Артикул замены - yyyyyy
       
      Товар №2
      Артикул - yyyyyy
      Артикул замены - xxxxxx
       
      Артикулов замены на одном товаре может быть до 3-х штук.
       
      Что я сделал:
      в контроллере продукта ...
       
      $this->data['productsArtZam'] = array(); $results = $this->model_catalog_product->getProductArtZam($this->request->get['product_id'],$this->data['sku'], $this->data['model']); foreach ($results as $result) { $skus = explode(',', $result['model']); foreach ($skus as $sku) { $this->data['productsArtZam'][] = array( 'sku' => trim($sku), 'href' => $this->url->link('product/product', 'product_id=' . $result['product_id']) ); } } В модели продукта ...
      public function getProductArtZam($product_id, $sku, $model) { $query = $this->db->query("SELECT DISTINCT * FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) WHERE (sku LIKE '%" . $model . "%' AND quantity > 0 AND status = '1' ) LIMIT 1,6 "); } в tpl продукта вывожу артикул тех продуктов, которые соответствуют запросу.
       
      У меня это работает так:
      я заполняю поле артикул(model) и, через запятую, Артикул замены (sku). Разбиваю строку на массив, сравниваю и вывожу.
      Чтобы эти арт. зам. выводились нужно в обоих товарах их прописать
       
      Кажется, что все у меня получается, я получаю нужные товары, до 3-х шт. с активными, правильными ссылками.
       
      НО
       
      из-за LIKE %...% у меня все не получается. Есть два разных товара с разными артикулами: артикул ART-38 и ART-3. Артикул замены применяется и к ART-38 и ART-3, а должен только к первому.
       
      Вместо LIKE делаю "=" все работает, как надо, но не выводится больше 1-го артикула замены, т.е. если в ...
       
      Товар №2
      Артикул - yyyyyy
      Артикул замены - xxxxxx, zzzzzz
       
      ... то запрос, как бы не устраивает. 
       
      Могли бы помочь решить эту проблемку? :)
       
    • By calibr
      Не изменяется категория в которой нужно отображать товар. При изменении категории он всегда остается в той в которой был отмечен первый раз и в новой категории. Если потом убираю его из новой то убирается. Подскажите как исправить плз.
  • Recently Browsing   0 members

    No registered users viewing this page.

×

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.