pasha2203 Опубліковано: 12 травня 2019 Share Опубліковано: 12 травня 2019 (змінено) Всем доброго времени суток. Подскажите пожалуйста или модуль или решение где возможно посмотреть. Есть много товаров которые частично необходимо скрыть от группы покупателей, т оесть к примеру по такому условию: Если в поле sku у товара написано "1" то товар видят все группы покупателей Если в поле sku у товара написано "2" то товар видит только определенная группа. Видел уже модули которые позволяют делать данные манипуляции при создании товара и соответственно выбирать группу для которой будет доступен данный товар,но здесь ситуация в другом необходимо привязаться к уже заполненному полю sku Змінено 12 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options...
ocdroid Опубліковано: 13 травня 2019 Share Опубліковано: 13 травня 2019 контроллер: if ($this->customer->isLogged()) { $data['customer_group_id'] = $this->customer->getGroupId(); } else { $data['customer_group_id'] = ''); } шаблон: <?php foreach ($products as $product) { ?> <?php if ($customer_group_id == 2) && ($product['sku'] == 2) { ?> <div class="product-layout product-list col-xs-12"> // show product </div> <?php } ?> <?php } ?> Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 13 травня 2019 Share Опубліковано: 13 травня 2019 8 часов назад, pasha2203 сказал: Всем доброго времени суток. Подскажите пожалуйста или модуль или решение где возможно посмотреть. Есть много товаров которые частично необходимо скрыть от группы покупателей, т оесть к примеру по такому условию: Если в поле sku у товара написано "1" то товар видят все группы покупателей Если в поле sku у товара написано "2" то товар видит только определенная группа. Видел уже модули которые позволяют делать данные манипуляции при создании товара и соответственно выбирать группу для которой будет доступен данный товар,но здесь ситуация в другом необходимо привязаться к уже заполненному полю sku В данном случае. это лучше всего реализовать в запросе. Насколько я понял поле sku - это у Вас id группы пользователя, правильно? Если да, тогда лучше всего в запросе это использовать. Идем в файл: catalog/model/catalog/product.php Ищем в функции getProducts, getTotalProducts проверку: if (!empty($data['filter_manufacturer_id'])) { и перед ней добавляем $sql .= " AND p.sku = '". (int)$this->customer->getGroupId() ."'"; И тогда сразу при запросах, в категории, странице производителя будут выводится товары, только для Вашей группы покупателей. В данном решении поле SKU должно ОБЯЗАТЕЛЬНО иметь id группы покупателя! Если хотите, чтоб и для других модулей и т.д. тогда по аналогии Вам нужно будет вставить запрос на проверку. Надіслати Поділитися на інших сайтах More sharing options... 2 weeks later... pasha2203 Опубліковано: 23 травня 2019 Автор Share Опубліковано: 23 травня 2019 спасибо ребята очень толково рассказали, извиняюсь за поздний ответ Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 23 травня 2019 Share Опубліковано: 23 травня 2019 В 13.05.2019 в 08:50, OCappLab сказал: p.sku = '". (int)$this->customer->getGroupId() ."'"; подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам 1 Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 24 травня 2019 Автор Share Опубліковано: 24 травня 2019 (змінено) В 13.05.2019 в 08:50, OCappLab сказал: В данном случае. это лучше всего реализовать в запросе. Насколько я понял поле sku - это у Вас id группы пользователя, правильно? Если да, тогда лучше всего в запросе это использовать. Идем в файл: catalog/model/catalog/product.php Ищем в функции getProducts, getTotalProducts проверку: if (!empty($data['filter_manufacturer_id'])) { и перед ней добавляем $sql .= " AND p.sku = '". (int)$this->customer->getGroupId() ."'"; И тогда сразу при запросах, в категории, странице производителя будут выводится товары, только для Вашей группы покупателей. В данном решении поле SKU должно ОБЯЗАТЕЛЬНО иметь id группы покупателя! Если хотите, чтоб и для других модулей и т.д. тогда по аналогии Вам нужно будет вставить запрос на проверку. нет в sku будет всего два параметра к примеру 12345 и 54321,так вот если покупатель принадлежит к группе "опт" то он видит товар с sku 12345 и 54321, если покупатель принадлежит к группе розница то он видит товар у которых sku 54321.Данное условие не должно задаваться в товаре каждый раз при создании товара, необходимо просто единожды прописать в коде и на постоянной основе Змінено 24 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 24 травня 2019 Share Опубліковано: 24 травня 2019 32 минуты назад, pasha2203 сказал: нет в sku будет всего два параметра к примеру 12345 и 54321,так вот если покупатель принадлежит к группе "опт" то он видит товар с sku 12345 и 54321, если покупатель принадлежит к группе розница то он видит товар у которых sku 54321.Данное условие не должно задаваться в товаре каждый раз при создании товара, необходимо просто единожды прописать в коде и на постоянной основе Судя из этого, нужно условие при выборке чуть изменить. Я предполагал, что SKU это и будет ID группы покупателя. Получиться что-то типо такого: if ($this->customer->getGroupId() == 2) { $sql .= " AND p.sku = '54321'"; } Где 2 - это ID группы оптовиков. Тоесть, если будет оптовик смотреть товары, тогда у него будут отображаться только товары где SKU имеет значение 54321. Только в этом моменте есть минус. Так как пока пользователь не авторизируется, по-умолчанию он считается розничным покупателем и ему будут доступны все товары. Примерно я понял Вашу логику. У Вас есть товары, какие можно купить как оптом, так и в розницу. Но не все розничные товары Вы продаете оптом. Тогда, думаю, проблемы не будет в том, что не авторизированные оптовики будут видеть весь ассортимент товара. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 24 травня 2019 Автор Share Опубліковано: 24 травня 2019 28 минут назад, OCappLab сказал: Судя из этого, нужно условие при выборке чуть изменить. Я предполагал, что SKU это и будет ID группы покупателя. Получиться что-то типо такого: if ($this->customer->getGroupId() == 2) { $sql .= " AND p.sku = '54321'"; } Где 2 - это ID группы оптовиков. Тоесть, если будет оптовик смотреть товары, тогда у него будут отображаться только товары где SKU имеет значение 54321. Только в этом моменте есть минус. Так как пока пользователь не авторизируется, по-умолчанию он считается розничным покупателем и ему будут доступны все товары. Примерно я понял Вашу логику. У Вас есть товары, какие можно купить как оптом, так и в розницу. Но не все розничные товары Вы продаете оптом. Тогда, думаю, проблемы не будет в том, что не авторизированные оптовики будут видеть весь ассортимент товара. немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 24 травня 2019 Share Опубліковано: 24 травня 2019 20 минут назад, pasha2203 сказал: немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Тогда 51 минуту назад, OCappLab сказал: Где 2 - это ID группы оптовиков. Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. 1 Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 В 24.05.2019 в 15:28, OCappLab сказал: Тогда Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. можите подсказать как такое реализовать если вам конечно не сложно Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 (змінено) Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Спойлер <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Змінено 25 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 28 травня 2019 Share Опубліковано: 28 травня 2019 В 26.05.2019 в 00:20, pasha2203 сказал: Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Скрыть контент <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Вот так попробуйте: Спойлер <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 1 червня 2019 Share Опубліковано: 1 червня 2019 Здравствуйте, тоже интересная тема. я кое что не допонял у меня есть две группы покупателей в у товара в поле upt будет писать Опт но как прикрепить к группе это слово, подскажите пожалуйста ? установил последнее сообщение в виде дополнение от OCappLab но чот я не могу понять как будет слово Опт подхватывать группу ? Надіслати Поділитися на інших сайтах More sharing options... fanatic Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 17 часов назад, ampeklol сказал: но чот я не могу понять как будет слово Опт подхватывать группу ? никак 17 часов назад, ampeklol сказал: установил последнее сообщение в виде дополнение от OCappLab вы понимаете что там происходит? // если идентификатор группы пользователя равен 0 или 1 if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { // в запрос к базе добаляем условие, чтобы выбрались только те товары у который upc = 'Опт' $sql .= " AND p.upc = 'Опт'"; } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 В 23.05.2019 в 09:13, chukcha сказал: подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам все давно есть Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 14 минут назад, chukcha сказал: все давно есть этот вариант не интересен, так как товары создаються автоматически и каждый день заходить в модуль и прикреплять товары не вариант. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 а прописывать в импорте легче? Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Скрывать товары от группы покупателей по условию Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
OCappLab Опубліковано: 13 травня 2019 Share Опубліковано: 13 травня 2019 8 часов назад, pasha2203 сказал: Всем доброго времени суток. Подскажите пожалуйста или модуль или решение где возможно посмотреть. Есть много товаров которые частично необходимо скрыть от группы покупателей, т оесть к примеру по такому условию: Если в поле sku у товара написано "1" то товар видят все группы покупателей Если в поле sku у товара написано "2" то товар видит только определенная группа. Видел уже модули которые позволяют делать данные манипуляции при создании товара и соответственно выбирать группу для которой будет доступен данный товар,но здесь ситуация в другом необходимо привязаться к уже заполненному полю sku В данном случае. это лучше всего реализовать в запросе. Насколько я понял поле sku - это у Вас id группы пользователя, правильно? Если да, тогда лучше всего в запросе это использовать. Идем в файл: catalog/model/catalog/product.php Ищем в функции getProducts, getTotalProducts проверку: if (!empty($data['filter_manufacturer_id'])) { и перед ней добавляем $sql .= " AND p.sku = '". (int)$this->customer->getGroupId() ."'"; И тогда сразу при запросах, в категории, странице производителя будут выводится товары, только для Вашей группы покупателей. В данном решении поле SKU должно ОБЯЗАТЕЛЬНО иметь id группы покупателя! Если хотите, чтоб и для других модулей и т.д. тогда по аналогии Вам нужно будет вставить запрос на проверку. Надіслати Поділитися на інших сайтах More sharing options... 2 weeks later... pasha2203 Опубліковано: 23 травня 2019 Автор Share Опубліковано: 23 травня 2019 спасибо ребята очень толково рассказали, извиняюсь за поздний ответ Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 23 травня 2019 Share Опубліковано: 23 травня 2019 В 13.05.2019 в 08:50, OCappLab сказал: p.sku = '". (int)$this->customer->getGroupId() ."'"; подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам 1 Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 24 травня 2019 Автор Share Опубліковано: 24 травня 2019 (змінено) В 13.05.2019 в 08:50, OCappLab сказал: В данном случае. это лучше всего реализовать в запросе. Насколько я понял поле sku - это у Вас id группы пользователя, правильно? Если да, тогда лучше всего в запросе это использовать. Идем в файл: catalog/model/catalog/product.php Ищем в функции getProducts, getTotalProducts проверку: if (!empty($data['filter_manufacturer_id'])) { и перед ней добавляем $sql .= " AND p.sku = '". (int)$this->customer->getGroupId() ."'"; И тогда сразу при запросах, в категории, странице производителя будут выводится товары, только для Вашей группы покупателей. В данном решении поле SKU должно ОБЯЗАТЕЛЬНО иметь id группы покупателя! Если хотите, чтоб и для других модулей и т.д. тогда по аналогии Вам нужно будет вставить запрос на проверку. нет в sku будет всего два параметра к примеру 12345 и 54321,так вот если покупатель принадлежит к группе "опт" то он видит товар с sku 12345 и 54321, если покупатель принадлежит к группе розница то он видит товар у которых sku 54321.Данное условие не должно задаваться в товаре каждый раз при создании товара, необходимо просто единожды прописать в коде и на постоянной основе Змінено 24 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 24 травня 2019 Share Опубліковано: 24 травня 2019 32 минуты назад, pasha2203 сказал: нет в sku будет всего два параметра к примеру 12345 и 54321,так вот если покупатель принадлежит к группе "опт" то он видит товар с sku 12345 и 54321, если покупатель принадлежит к группе розница то он видит товар у которых sku 54321.Данное условие не должно задаваться в товаре каждый раз при создании товара, необходимо просто единожды прописать в коде и на постоянной основе Судя из этого, нужно условие при выборке чуть изменить. Я предполагал, что SKU это и будет ID группы покупателя. Получиться что-то типо такого: if ($this->customer->getGroupId() == 2) { $sql .= " AND p.sku = '54321'"; } Где 2 - это ID группы оптовиков. Тоесть, если будет оптовик смотреть товары, тогда у него будут отображаться только товары где SKU имеет значение 54321. Только в этом моменте есть минус. Так как пока пользователь не авторизируется, по-умолчанию он считается розничным покупателем и ему будут доступны все товары. Примерно я понял Вашу логику. У Вас есть товары, какие можно купить как оптом, так и в розницу. Но не все розничные товары Вы продаете оптом. Тогда, думаю, проблемы не будет в том, что не авторизированные оптовики будут видеть весь ассортимент товара. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 24 травня 2019 Автор Share Опубліковано: 24 травня 2019 28 минут назад, OCappLab сказал: Судя из этого, нужно условие при выборке чуть изменить. Я предполагал, что SKU это и будет ID группы покупателя. Получиться что-то типо такого: if ($this->customer->getGroupId() == 2) { $sql .= " AND p.sku = '54321'"; } Где 2 - это ID группы оптовиков. Тоесть, если будет оптовик смотреть товары, тогда у него будут отображаться только товары где SKU имеет значение 54321. Только в этом моменте есть минус. Так как пока пользователь не авторизируется, по-умолчанию он считается розничным покупателем и ему будут доступны все товары. Примерно я понял Вашу логику. У Вас есть товары, какие можно купить как оптом, так и в розницу. Но не все розничные товары Вы продаете оптом. Тогда, думаю, проблемы не будет в том, что не авторизированные оптовики будут видеть весь ассортимент товара. немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 24 травня 2019 Share Опубліковано: 24 травня 2019 20 минут назад, pasha2203 сказал: немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Тогда 51 минуту назад, OCappLab сказал: Где 2 - это ID группы оптовиков. Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. 1 Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 В 24.05.2019 в 15:28, OCappLab сказал: Тогда Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. можите подсказать как такое реализовать если вам конечно не сложно Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 (змінено) Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Спойлер <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Змінено 25 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 28 травня 2019 Share Опубліковано: 28 травня 2019 В 26.05.2019 в 00:20, pasha2203 сказал: Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Скрыть контент <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Вот так попробуйте: Спойлер <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 1 червня 2019 Share Опубліковано: 1 червня 2019 Здравствуйте, тоже интересная тема. я кое что не допонял у меня есть две группы покупателей в у товара в поле upt будет писать Опт но как прикрепить к группе это слово, подскажите пожалуйста ? установил последнее сообщение в виде дополнение от OCappLab но чот я не могу понять как будет слово Опт подхватывать группу ? Надіслати Поділитися на інших сайтах More sharing options... fanatic Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 17 часов назад, ampeklol сказал: но чот я не могу понять как будет слово Опт подхватывать группу ? никак 17 часов назад, ampeklol сказал: установил последнее сообщение в виде дополнение от OCappLab вы понимаете что там происходит? // если идентификатор группы пользователя равен 0 или 1 if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { // в запрос к базе добаляем условие, чтобы выбрались только те товары у который upc = 'Опт' $sql .= " AND p.upc = 'Опт'"; } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 В 23.05.2019 в 09:13, chukcha сказал: подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам все давно есть Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 14 минут назад, chukcha сказал: все давно есть этот вариант не интересен, так как товары создаються автоматически и каждый день заходить в модуль и прикреплять товары не вариант. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 а прописывать в импорте легче? Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Скрывать товары от группы покупателей по условию Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
pasha2203 Опубліковано: 23 травня 2019 Автор Share Опубліковано: 23 травня 2019 спасибо ребята очень толково рассказали, извиняюсь за поздний ответ Надіслати Поділитися на інших сайтах More sharing options...
chukcha Опубліковано: 23 травня 2019 Share Опубліковано: 23 травня 2019 В 13.05.2019 в 08:50, OCappLab сказал: p.sku = '". (int)$this->customer->getGroupId() ."'"; подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам 1 Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 24 травня 2019 Автор Share Опубліковано: 24 травня 2019 (змінено) В 13.05.2019 в 08:50, OCappLab сказал: В данном случае. это лучше всего реализовать в запросе. Насколько я понял поле sku - это у Вас id группы пользователя, правильно? Если да, тогда лучше всего в запросе это использовать. Идем в файл: catalog/model/catalog/product.php Ищем в функции getProducts, getTotalProducts проверку: if (!empty($data['filter_manufacturer_id'])) { и перед ней добавляем $sql .= " AND p.sku = '". (int)$this->customer->getGroupId() ."'"; И тогда сразу при запросах, в категории, странице производителя будут выводится товары, только для Вашей группы покупателей. В данном решении поле SKU должно ОБЯЗАТЕЛЬНО иметь id группы покупателя! Если хотите, чтоб и для других модулей и т.д. тогда по аналогии Вам нужно будет вставить запрос на проверку. нет в sku будет всего два параметра к примеру 12345 и 54321,так вот если покупатель принадлежит к группе "опт" то он видит товар с sku 12345 и 54321, если покупатель принадлежит к группе розница то он видит товар у которых sku 54321.Данное условие не должно задаваться в товаре каждый раз при создании товара, необходимо просто единожды прописать в коде и на постоянной основе Змінено 24 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 24 травня 2019 Share Опубліковано: 24 травня 2019 32 минуты назад, pasha2203 сказал: нет в sku будет всего два параметра к примеру 12345 и 54321,так вот если покупатель принадлежит к группе "опт" то он видит товар с sku 12345 и 54321, если покупатель принадлежит к группе розница то он видит товар у которых sku 54321.Данное условие не должно задаваться в товаре каждый раз при создании товара, необходимо просто единожды прописать в коде и на постоянной основе Судя из этого, нужно условие при выборке чуть изменить. Я предполагал, что SKU это и будет ID группы покупателя. Получиться что-то типо такого: if ($this->customer->getGroupId() == 2) { $sql .= " AND p.sku = '54321'"; } Где 2 - это ID группы оптовиков. Тоесть, если будет оптовик смотреть товары, тогда у него будут отображаться только товары где SKU имеет значение 54321. Только в этом моменте есть минус. Так как пока пользователь не авторизируется, по-умолчанию он считается розничным покупателем и ему будут доступны все товары. Примерно я понял Вашу логику. У Вас есть товары, какие можно купить как оптом, так и в розницу. Но не все розничные товары Вы продаете оптом. Тогда, думаю, проблемы не будет в том, что не авторизированные оптовики будут видеть весь ассортимент товара. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 24 травня 2019 Автор Share Опубліковано: 24 травня 2019 28 минут назад, OCappLab сказал: Судя из этого, нужно условие при выборке чуть изменить. Я предполагал, что SKU это и будет ID группы покупателя. Получиться что-то типо такого: if ($this->customer->getGroupId() == 2) { $sql .= " AND p.sku = '54321'"; } Где 2 - это ID группы оптовиков. Тоесть, если будет оптовик смотреть товары, тогда у него будут отображаться только товары где SKU имеет значение 54321. Только в этом моменте есть минус. Так как пока пользователь не авторизируется, по-умолчанию он считается розничным покупателем и ему будут доступны все товары. Примерно я понял Вашу логику. У Вас есть товары, какие можно купить как оптом, так и в розницу. Но не все розничные товары Вы продаете оптом. Тогда, думаю, проблемы не будет в том, что не авторизированные оптовики будут видеть весь ассортимент товара. немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 24 травня 2019 Share Опубліковано: 24 травня 2019 20 минут назад, pasha2203 сказал: немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Тогда 51 минуту назад, OCappLab сказал: Где 2 - это ID группы оптовиков. Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. 1 Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 В 24.05.2019 в 15:28, OCappLab сказал: Тогда Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. можите подсказать как такое реализовать если вам конечно не сложно Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 (змінено) Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Спойлер <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Змінено 25 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 28 травня 2019 Share Опубліковано: 28 травня 2019 В 26.05.2019 в 00:20, pasha2203 сказал: Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Скрыть контент <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Вот так попробуйте: Спойлер <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 1 червня 2019 Share Опубліковано: 1 червня 2019 Здравствуйте, тоже интересная тема. я кое что не допонял у меня есть две группы покупателей в у товара в поле upt будет писать Опт но как прикрепить к группе это слово, подскажите пожалуйста ? установил последнее сообщение в виде дополнение от OCappLab но чот я не могу понять как будет слово Опт подхватывать группу ? Надіслати Поділитися на інших сайтах More sharing options... fanatic Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 17 часов назад, ampeklol сказал: но чот я не могу понять как будет слово Опт подхватывать группу ? никак 17 часов назад, ampeklol сказал: установил последнее сообщение в виде дополнение от OCappLab вы понимаете что там происходит? // если идентификатор группы пользователя равен 0 или 1 if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { // в запрос к базе добаляем условие, чтобы выбрались только те товары у который upc = 'Опт' $sql .= " AND p.upc = 'Опт'"; } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 В 23.05.2019 в 09:13, chukcha сказал: подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам все давно есть Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 14 минут назад, chukcha сказал: все давно есть этот вариант не интересен, так как товары создаються автоматически и каждый день заходить в модуль и прикреплять товары не вариант. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 а прописывать в импорте легче? Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Скрывать товары от группы покупателей по условию Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
pasha2203 Опубліковано: 24 травня 2019 Автор Share Опубліковано: 24 травня 2019 (змінено) В 13.05.2019 в 08:50, OCappLab сказал: В данном случае. это лучше всего реализовать в запросе. Насколько я понял поле sku - это у Вас id группы пользователя, правильно? Если да, тогда лучше всего в запросе это использовать. Идем в файл: catalog/model/catalog/product.php Ищем в функции getProducts, getTotalProducts проверку: if (!empty($data['filter_manufacturer_id'])) { и перед ней добавляем $sql .= " AND p.sku = '". (int)$this->customer->getGroupId() ."'"; И тогда сразу при запросах, в категории, странице производителя будут выводится товары, только для Вашей группы покупателей. В данном решении поле SKU должно ОБЯЗАТЕЛЬНО иметь id группы покупателя! Если хотите, чтоб и для других модулей и т.д. тогда по аналогии Вам нужно будет вставить запрос на проверку. нет в sku будет всего два параметра к примеру 12345 и 54321,так вот если покупатель принадлежит к группе "опт" то он видит товар с sku 12345 и 54321, если покупатель принадлежит к группе розница то он видит товар у которых sku 54321.Данное условие не должно задаваться в товаре каждый раз при создании товара, необходимо просто единожды прописать в коде и на постоянной основе Змінено 24 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options...
OCappLab Опубліковано: 24 травня 2019 Share Опубліковано: 24 травня 2019 32 минуты назад, pasha2203 сказал: нет в sku будет всего два параметра к примеру 12345 и 54321,так вот если покупатель принадлежит к группе "опт" то он видит товар с sku 12345 и 54321, если покупатель принадлежит к группе розница то он видит товар у которых sku 54321.Данное условие не должно задаваться в товаре каждый раз при создании товара, необходимо просто единожды прописать в коде и на постоянной основе Судя из этого, нужно условие при выборке чуть изменить. Я предполагал, что SKU это и будет ID группы покупателя. Получиться что-то типо такого: if ($this->customer->getGroupId() == 2) { $sql .= " AND p.sku = '54321'"; } Где 2 - это ID группы оптовиков. Тоесть, если будет оптовик смотреть товары, тогда у него будут отображаться только товары где SKU имеет значение 54321. Только в этом моменте есть минус. Так как пока пользователь не авторизируется, по-умолчанию он считается розничным покупателем и ему будут доступны все товары. Примерно я понял Вашу логику. У Вас есть товары, какие можно купить как оптом, так и в розницу. Но не все розничные товары Вы продаете оптом. Тогда, думаю, проблемы не будет в том, что не авторизированные оптовики будут видеть весь ассортимент товара. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 24 травня 2019 Автор Share Опубліковано: 24 травня 2019 28 минут назад, OCappLab сказал: Судя из этого, нужно условие при выборке чуть изменить. Я предполагал, что SKU это и будет ID группы покупателя. Получиться что-то типо такого: if ($this->customer->getGroupId() == 2) { $sql .= " AND p.sku = '54321'"; } Где 2 - это ID группы оптовиков. Тоесть, если будет оптовик смотреть товары, тогда у него будут отображаться только товары где SKU имеет значение 54321. Только в этом моменте есть минус. Так как пока пользователь не авторизируется, по-умолчанию он считается розничным покупателем и ему будут доступны все товары. Примерно я понял Вашу логику. У Вас есть товары, какие можно купить как оптом, так и в розницу. Но не все розничные товары Вы продаете оптом. Тогда, думаю, проблемы не будет в том, что не авторизированные оптовики будут видеть весь ассортимент товара. немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 24 травня 2019 Share Опубліковано: 24 травня 2019 20 минут назад, pasha2203 сказал: немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Тогда 51 минуту назад, OCappLab сказал: Где 2 - это ID группы оптовиков. Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. 1 Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 В 24.05.2019 в 15:28, OCappLab сказал: Тогда Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. можите подсказать как такое реализовать если вам конечно не сложно Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 (змінено) Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Спойлер <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Змінено 25 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 28 травня 2019 Share Опубліковано: 28 травня 2019 В 26.05.2019 в 00:20, pasha2203 сказал: Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Скрыть контент <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Вот так попробуйте: Спойлер <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 1 червня 2019 Share Опубліковано: 1 червня 2019 Здравствуйте, тоже интересная тема. я кое что не допонял у меня есть две группы покупателей в у товара в поле upt будет писать Опт но как прикрепить к группе это слово, подскажите пожалуйста ? установил последнее сообщение в виде дополнение от OCappLab но чот я не могу понять как будет слово Опт подхватывать группу ? Надіслати Поділитися на інших сайтах More sharing options... fanatic Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 17 часов назад, ampeklol сказал: но чот я не могу понять как будет слово Опт подхватывать группу ? никак 17 часов назад, ampeklol сказал: установил последнее сообщение в виде дополнение от OCappLab вы понимаете что там происходит? // если идентификатор группы пользователя равен 0 или 1 if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { // в запрос к базе добаляем условие, чтобы выбрались только те товары у который upc = 'Опт' $sql .= " AND p.upc = 'Опт'"; } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 В 23.05.2019 в 09:13, chukcha сказал: подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам все давно есть Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 14 минут назад, chukcha сказал: все давно есть этот вариант не интересен, так как товары создаються автоматически и каждый день заходить в модуль и прикреплять товары не вариант. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 а прописывать в импорте легче? Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Скрывать товары от группы покупателей по условию Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
pasha2203 Опубліковано: 24 травня 2019 Автор Share Опубліковано: 24 травня 2019 28 минут назад, OCappLab сказал: Судя из этого, нужно условие при выборке чуть изменить. Я предполагал, что SKU это и будет ID группы покупателя. Получиться что-то типо такого: if ($this->customer->getGroupId() == 2) { $sql .= " AND p.sku = '54321'"; } Где 2 - это ID группы оптовиков. Тоесть, если будет оптовик смотреть товары, тогда у него будут отображаться только товары где SKU имеет значение 54321. Только в этом моменте есть минус. Так как пока пользователь не авторизируется, по-умолчанию он считается розничным покупателем и ему будут доступны все товары. Примерно я понял Вашу логику. У Вас есть товары, какие можно купить как оптом, так и в розницу. Но не все розничные товары Вы продаете оптом. Тогда, думаю, проблемы не будет в том, что не авторизированные оптовики будут видеть весь ассортимент товара. немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Надіслати Поділитися на інших сайтах More sharing options...
OCappLab Опубліковано: 24 травня 2019 Share Опубліковано: 24 травня 2019 20 минут назад, pasha2203 сказал: немного не так опт должен видеть весь товар,а вот не авторизированне пользователи и розниа должн видетьть только часть товара Тогда 51 минуту назад, OCappLab сказал: Где 2 - это ID группы оптовиков. Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. 1 Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 В 24.05.2019 в 15:28, OCappLab сказал: Тогда Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. можите подсказать как такое реализовать если вам конечно не сложно Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 (змінено) Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Спойлер <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Змінено 25 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options... OCappLab Опубліковано: 28 травня 2019 Share Опубліковано: 28 травня 2019 В 26.05.2019 в 00:20, pasha2203 сказал: Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Скрыть контент <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Вот так попробуйте: Спойлер <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 1 червня 2019 Share Опубліковано: 1 червня 2019 Здравствуйте, тоже интересная тема. я кое что не допонял у меня есть две группы покупателей в у товара в поле upt будет писать Опт но как прикрепить к группе это слово, подскажите пожалуйста ? установил последнее сообщение в виде дополнение от OCappLab но чот я не могу понять как будет слово Опт подхватывать группу ? Надіслати Поділитися на інших сайтах More sharing options... fanatic Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 17 часов назад, ampeklol сказал: но чот я не могу понять как будет слово Опт подхватывать группу ? никак 17 часов назад, ampeklol сказал: установил последнее сообщение в виде дополнение от OCappLab вы понимаете что там происходит? // если идентификатор группы пользователя равен 0 или 1 if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { // в запрос к базе добаляем условие, чтобы выбрались только те товары у который upc = 'Опт' $sql .= " AND p.upc = 'Опт'"; } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 В 23.05.2019 в 09:13, chukcha сказал: подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам все давно есть Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 14 минут назад, chukcha сказал: все давно есть этот вариант не интересен, так как товары создаються автоматически и каждый день заходить в модуль и прикреплять товары не вариант. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 а прописывать в импорте легче? Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Скрывать товары от группы покупателей по условию Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 В 24.05.2019 в 15:28, OCappLab сказал: Тогда Группа розницы. И, на всякий случай, добавить проверку на 0. и получится if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.sku = '12345'"; } Где 1 - это ID группы по-умолчанию. Это конечно костыль. Можно сделать в виде доп настройки в настройке системы. Чтоб была настройка какие группы что видят и что не видят. можите подсказать как такое реализовать если вам конечно не сложно Надіслати Поділитися на інших сайтах More sharing options...
pasha2203 Опубліковано: 25 травня 2019 Автор Share Опубліковано: 25 травня 2019 (змінено) Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Спойлер <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Змінено 25 травня 2019 користувачем pasha2203 Надіслати Поділитися на інших сайтах More sharing options...
OCappLab Опубліковано: 28 травня 2019 Share Опубліковано: 28 травня 2019 В 26.05.2019 в 00:20, pasha2203 сказал: Спасибо и так уже много подсказали.не буду наглеть.Ребята подскажите где ошибка в коде почему то не прописуються изменения в модели при установке модификатора Скрыть контент <modification> <name>JGN</name> <code>product</code> <version>1</version> <author>tet.ru</author> <link>http://tet.ru</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search index="0"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> <operation error="skip"> <search index="1"><![CDATA[if (!empty($data['filter_category_id']))]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Вот так попробуйте: Спойлер <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 1 червня 2019 Share Опубліковано: 1 червня 2019 Здравствуйте, тоже интересная тема. я кое что не допонял у меня есть две группы покупателей в у товара в поле upt будет писать Опт но как прикрепить к группе это слово, подскажите пожалуйста ? установил последнее сообщение в виде дополнение от OCappLab но чот я не могу понять как будет слово Опт подхватывать группу ? Надіслати Поділитися на інших сайтах More sharing options... fanatic Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 17 часов назад, ampeklol сказал: но чот я не могу понять как будет слово Опт подхватывать группу ? никак 17 часов назад, ampeklol сказал: установил последнее сообщение в виде дополнение от OCappLab вы понимаете что там происходит? // если идентификатор группы пользователя равен 0 или 1 if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { // в запрос к базе добаляем условие, чтобы выбрались только те товары у который upc = 'Опт' $sql .= " AND p.upc = 'Опт'"; } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 В 23.05.2019 в 09:13, chukcha сказал: подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам все давно есть Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 14 минут назад, chukcha сказал: все давно есть этот вариант не интересен, так как товары создаються автоматически и каждый день заходить в модуль и прикреплять товары не вариант. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 а прописывать в импорте легче? Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Скрывать товары от группы покупателей по условию Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV
ampeklol Опубліковано: 1 червня 2019 Share Опубліковано: 1 червня 2019 Здравствуйте, тоже интересная тема. я кое что не допонял у меня есть две группы покупателей в у товара в поле upt будет писать Опт но как прикрепить к группе это слово, подскажите пожалуйста ? установил последнее сообщение в виде дополнение от OCappLab но чот я не могу понять как будет слово Опт подхватывать группу ? Надіслати Поділитися на інших сайтах More sharing options...
fanatic Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 17 часов назад, ampeklol сказал: но чот я не могу понять как будет слово Опт подхватывать группу ? никак 17 часов назад, ampeklol сказал: установил последнее сообщение в виде дополнение от OCappLab вы понимаете что там происходит? // если идентификатор группы пользователя равен 0 или 1 if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { // в запрос к базе добаляем условие, чтобы выбрались только те товары у который upc = 'Опт' $sql .= " AND p.upc = 'Опт'"; } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 В 23.05.2019 в 09:13, chukcha сказал: подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам все давно есть Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 14 минут назад, chukcha сказал: все давно есть этот вариант не интересен, так как товары создаються автоматически и каждый день заходить в модуль и прикреплять товары не вариант. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 а прописывать в импорте легче? Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Скрывать товары от группы покупателей по условию
chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 В 23.05.2019 в 09:13, chukcha сказал: подразумевает что товар принадлежит только одной группе У меня есть модуль рабочее название Restrict Entity - Access Customer Group позволяет привязывать товары и категории различным группам все давно есть Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 14 минут назад, chukcha сказал: все давно есть этот вариант не интересен, так как товары создаються автоматически и каждый день заходить в модуль и прикреплять товары не вариант. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 а прописывать в импорте легче? Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 14 минут назад, chukcha сказал: все давно есть этот вариант не интересен, так как товары создаються автоматически и каждый день заходить в модуль и прикреплять товары не вариант. Надіслати Поділитися на інших сайтах More sharing options...
chukcha Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 а прописывать в импорте легче? Надіслати Поділитися на інших сайтах More sharing options... ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options... pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0
ampeklol Опубліковано: 2 червня 2019 Share Опубліковано: 2 червня 2019 53 минуты назад, chukcha сказал: а прописывать в импорте легче? используем парсер который работает по крону и прописать поле upc=Опт проще простого. Надіслати Поділитися на інших сайтах More sharing options...
pasha2203 Опубліковано: 3 червня 2019 Автор Share Опубліковано: 3 червня 2019 В 28.05.2019 в 13:05, OCappLab сказал: Вот так попробуйте: Скрыть контент <?xml version="1.0" encoding="utf-8"?> <modification> <code>JGN</code> <name>For pasha2203</name> <version>1.0.0</version> <author>OCappLab</author> <link>https://ocapplab.com/</link> <file path="catalog/model/catalog/product.php"> <operation error="skip"> <search><![CDATA[if (!empty($data['filter_manufacturer_id'])) {]]></search> <add position="before"><![CDATA[ if ($this->customer->getGroupId() == 0 or $this->customer->getGroupId() == 1) { $sql .= " AND p.upc = 'Опт'"; } ]]></add> </operation> </file> </modification> Если не было изменений в коде будет работать. P.S. проверял на OCstore 2.3 Спасибо вам, понял свою ошибку, Для тех кто будет копировать донный код, не забываем про скрытые символы которые также тянуться при копировании Надіслати Поділитися на інших сайтах More sharing options...
Recommended Posts