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

Recommended Posts

Добрый день.

Подскажите, можно ли каким либо образом из прайс-листа управлять полем наличия товара (предазказ, в наличии, .. etc.) ?

Да, можно

 

В руководстве привел текст программы, которым нужно заменить стандартную функцию опенкарта, чтобы было так, как вы укажите в Форме поставщика перед загоузкой (стр. "Общие" внизу)

Надіслати
Поділитися на інших сайтах

Повторю вопрос. 

Не очень понятно в Руководстве, как привязать товар к нескольким категориями. Написано так, что как будто у производителя только один тип товара. Но так ведь не всегда.

 

К родительской и дочерней понятно. В прайсе указываешь дочернюю, в модуле ставишь галочку на "показывать в родительской категории". Правильно?

 

А допустим у одного производителя несколько видов товара.

Есть категории: Кат-А (родительская), Кат-Б и подкатегория Кат-В. Как сделать, чтобы товар во всех трех категориях показывался?

В "Действиях" есть пункт "Показывать также и в указанной категории"

Т.е. вы указали в фильтре категорию, нажали СТАРТ и ..... отобранные фильтром товары, появятся в этой категории.

 

Значит, ваш вопрос сводится к такому: "Как отобрать товары для задачи "Показывать также и в указанной категории" ?

(напомню, что вы находитесь в форме какого-то поставщика, и фильтр ищет только по этому поставщику)

 

Фильтровать можно по дате обновления, можно по номерам товаров (ведь номера идут по-порядку возрастания), можно по производителю.

Или по всем этим признакам одновременно (фильтр работает как "И" ).

 

Больше ничего не смог придумать:(

Надіслати
Поділитися на інших сайтах

В "Действиях" есть пункт "Показывать также и в указанной категории"

Т.е. вы указали в фильтре категорию, нажали СТАРТ и ..... отобранные фильтром товары, появятся в этой категории.

 

Значит, ваш вопрос сводится к такому: "Как отобрать товары для задачи "Показывать также и в указанной категории" ?

(напомню, что вы находитесь в форме какого-то поставщика, и фильтр ищет только по этому поставщику)

 

Фильтровать можно по дате обновления, можно по номерам товаров (ведь номера идут по-порядку возрастания), можно по производителю.

Или по всем этим признакам одновременно (фильтр работает как "И" ).

 

Больше ничего не смог придумать :(

 

Так загвоздка в том, что у Производителя может быть РАЗНЫЕ типы товаров. И если я выберу категорию телефоны, то зачем мне в этой категории показывать печи?

Или я не догоняю чего-то?

Ответьте плиз на мои вопросы. :)

 

К родительской и дочерней понятно. В прайсе указываешь дочернюю, в модуле ставишь галочку на "показывать в родительской категории". Правильно?

А допустим у одного производителя несколько видов товаров.

Есть категории: Кат-А (родительская), Кат-Б и подкатегория Кат-В. Как сделать, чтобы товар во всех трех категориях показывался?

Надіслати
Поділитися на інших сайтах


1.Таблицу suppler в БД привести в соответствие со скриншотом в "Инструкции по установке".

Все заработает.

 

2.По вопросу отображения товаров в других категориях.

К сожалению, пока не придумал, как всю(целиком) категорию дублировать в другой.

Программно это не сложно сделать, а вот как понятно оформить в "Действиях", не знаю.

Если подскажите, в 5.0 сделаю.

Надіслати
Поділитися на інших сайтах

Приятно, когда тебя вспоминают добрым словом за чашкой кофе :)

Это дороже денег.

Спасибо.

 

Я так понял, что вы прайс, таки НЕ загружаете, иначе, что вам стоит сразу нажать на кнопку "Обновить" и пойти в кафе?

Вы, наверное, имеете в виду, что модуль в 1:00 начнет парсить сайт поставщика по поводу новых цен и выключит все товары этого поставщика, которые не обновились?

Так?

 

Это интересная тема, просто, раньше, до проекта 5.0 цена не парсилась, а бралась из прайса (в 5.0 уже парсится), поэтому вариант с кроном был не реальным.

А теперь... можно подумать :)

У меня видимо не стандартные доноры как и вообще ситуация, вообщем некоторые доноры банят IP по количеству запросов, при сборе информации с таких приходится использовать прокси лист, прайс например в 4000 позиций с 4-5 фото загружается около 2 часов, при этом ложит домен, из за этого обновления лучше делать ночью по крону. И еще можно ли как то предусмотреть смену прокси по количеству запросов?

НУ и по поводу отключения товаров с определенным статусом от категорий.

Надіслати
Поділитися на інших сайтах


Добрый день! В первую очередь хочу сказать спасибо за такое полезное дополнение!

 

Итак... Появилась необходимость сделать следующее.

У меня в опциях товара есть знак "="... помимо "+" и "-"

В форме поставщика, во вкладке Опции у нас имеется "+ к цене". 

Вопрос: Как мне добавить "= к цене", чтобы с прайса парсилась туда колонка?

Заранее благодарю за ответ и готов предоставить необходимые данные для решения задачи. 

Надіслати
Поділитися на інших сайтах


Еще вот такую штуку заметил, например если в первой колонке из 4-х парсер по ссылке фото не нашел, остальные 3 колонки он даже не просматривает, и товар просто не добавляет, было бы логичней просмотреть все колонки и добавить первую найденную фото по дефалту.

Надіслати
Поділитися на інших сайтах


уважаемый автор. второй раз обращаю внимание на ваше дополнение

в opencart всё, что приходит в реквесте, каждое поле фильтруется методом clean, в котором есть интересная строка

$data = htmlspecialchars($data, ENT_COMPAT, 'UTF-8');

в вашем же модуле ничего такого я не заметил. так вот, к чему это я. в своих работах всегда опираюсь на дефолтные настройки, стараясь оставить большую совместимость с самим opencart и всевозможными модулями его дополняющими. filterpro не будет работать с атрибутами, опциями, производителями если в базе они будут хранить спецсимволы в изначальном виде, например ", а не "

после вашего импорта база приходит в состояние, чуждое opencart, фильтр не работает и пользователи пишут мне, что, согласитесь, не совсем честно.

Надіслати
Поділитися на інших сайтах

Выкачанный прайс с сайта нормально открывается через LibreOffice 4 версии. Или OpenOffice ?
Или же категорически рекомендуется использовать майкрософт офисс ? 
 

Надіслати
Поділитися на інших сайтах

уважаемый автор. второй раз обращаю внимание на ваше дополнение

в opencart всё, что приходит в реквесте, каждое поле фильтруется методом clean, в котором есть интересная строка

$data = htmlspecialchars($data, ENT_COMPAT, 'UTF-8');

в вашем же модуле ничего такого я не заметил. так вот, к чему это я. в своих работах всегда опираюсь на дефолтные настройки, стараясь оставить большую совместимость с самим opencart и всевозможными модулями его дополняющими. filterpro не будет работать с атрибутами, опциями, производителями если в базе они будут хранить спецсимволы в изначальном виде, например ", а не "

после вашего импорта база приходит в состояние, чуждое opencart, фильтр не работает и пользователи пишут мне, что, согласитесь, не совсем честно.

 

Это я замучал Freelancer'a. Полдня мучались. Но победили. А что дальше - не знаю. :(

Надіслати
Поділитися на інших сайтах


Version 1.5.3.1

Вопрос остался открытым (по ветке так ответа не нашел). Что это за ошибка в логах и как с ней бороться??

 

 

---------- Date: 2013-08-01 11:06:14 ~ IP : 95.135.116.199 ----------
REQUEST URI : /ru
MOD DETAILS:
   modFile   : /home/virtwww/w_paradise_95abbeb1/http/vqmod/xml/suppler.xml
   id        : SUPPLER
   version   : 
   vqmver    : 
   author    : ingenerks
SEARCH NOT FOUND (ABORTING MOD): if (!empty($data['filter_description'])) {
$implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%' OR LCASE(pd.description) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'";
} else {
$implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'";
}
}
 
ocStore  Version 1.5.3.1
Змінено користувачем Ishtvan
Надіслати
Поділитися на інших сайтах


/admin/model/catalog/suppler.php

if (!isset($row[$price]) or empty($row[$price]) or !preg_match('/^[0-9.]+$/', $row[$price])) {
				$n = $row_count;
				$err = date('Y-m-d H:i:s'). " The Product was missed: Row ~= " . $n . " Product code (sku) = " . $row[$cod] . " Invalid price of product = ". $row[$price]. "\n";
				$this->adderr($err);
				continue;
			}

предлагаю заменить

empty($row[$price])

на

$row[$price] == ''

Если подать цену 0, то empty отработает ее как false и соответственно будет ошибка

Invalid price of product
  • +1 1
Надіслати
Поділитися на інших сайтах


уважаемый автор. второй раз обращаю внимание на ваше дополнение

в opencart всё, что приходит в реквесте, каждое поле фильтруется методом clean, в котором есть интересная строка

$data = htmlspecialchars($data, ENT_COMPAT, 'UTF-8');

в вашем же модуле ничего такого я не заметил. так вот, к чему это я. в своих работах всегда опираюсь на дефолтные настройки, стараясь оставить большую совместимость с самим opencart и всевозможными модулями его дополняющими. filterpro не будет работать с атрибутами, опциями, производителями если в базе они будут хранить спецсимволы в изначальном виде, например ", а не "

после вашего импорта база приходит в состояние, чуждое opencart, фильтр не работает и пользователи пишут мне, что, согласитесь, не совсем честно.

Просто первого обращения, как-то не заметил:)

Конечно поправлю, самому ваш фильтр нужен.

Надіслати
Поділитися на інших сайтах

У меня видимо не стандартные доноры как и вообще ситуация, вообщем некоторые доноры банят IP по количеству запросов, при сборе информации с таких приходится использовать прокси лист, прайс например в 4000 позиций с 4-5 фото загружается около 2 часов, при этом ложит домен, из за этого обновления лучше делать ночью по крону. И еще можно ли как то предусмотреть смену прокси по количеству запросов?

НУ и по поводу отключения товаров с определенным статусом от категорий.

Есть такой вариант в "Действиях": ставите "Товар закончился" и "Выключить".

Надіслати
Поділитися на інших сайтах

Выкачанный прайс с сайта нормально открывается через LibreOffice 4 версии. Или OpenOffice ?

Или же категорически рекомендуется использовать майкрософт офисс ? 

 

Майкрософт точно работает, другие не знаю, попробуйте.

Надіслати
Поділитися на інших сайтах

Это я замучал Freelancer'a. Полдня мучались. Но победили. А что дальше - не знаю. :(

Спасибо, общее дело делаем.:)

Надіслати
Поділитися на інших сайтах

закончил читать ваш мини учебник  doc.doc вроде расширение ок, но что то я вообще дурак не могу выгрузит с чистого движка прайс что бы посмотреть на его таблицу. 
Раньше пользовался бесплатным модулем там было 2 кнопки выгрузить, загрузить. Тут функционала поболее но что то до меня не доходит как это сделать :(

Надіслати
Поділитися на інших сайтах

 

Вопрос остался открытым (по ветке так ответа не нашел). Что это за ошибка в логах и как с ней бороться??

 

 

---------- Date: 2013-08-01 11:06:14 ~ IP : 95.135.116.199 ----------
REQUEST URI : /ru
MOD DETAILS:
   modFile   : /home/virtwww/w_paradise_95abbeb1/http/vqmod/xml/suppler.xml
   id        : SUPPLER
   version   : 
   vqmver    : 
   author    : ingenerks
SEARCH NOT FOUND (ABORTING MOD): if (!empty($data['filter_description'])) {
$implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%' OR LCASE(pd.description) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'";
} else {
$implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'";
}
}
 
ocStore  Version 1.5.3.1

 

Это вставка в файл catalog/model/catalog/product.php

для версий 1.5.1.3 и 1.5.3.1

Предназначена для поиска товара по sku и Модели в админке Товары.

 

Не срабатывает из за пробелов.

Если вам к спеху, замените в вкюмоде/xml/suppler.xml

 

Текст (в двух местах)

 

if (!empty($data['filter_description'])) {

$implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%' OR LCASE(pd.description) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'";
} else {
$implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'";
}
}
 
на тот, что у вас в файле catalog/model/catalog/product.php  у меня там:
 
if (!empty($data['filter_description'])) {

                            $implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%' OR LCASE(pd.description) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'";

                        } else {

                            $implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'";

                        }                

                    }

Надіслати
Поділитися на інших сайтах

закончил читать ваш мини учебник  doc.doc вроде расширение ок, но что то я вообще дурак не могу выгрузит с чистого движка прайс что бы посмотреть на его таблицу. 

Раньше пользовался бесплатным модулем там было 2 кнопки выгрузить, загрузить. Тут функционала поболее но что то до меня не доходит как это сделать :(

"Учебник" буду переписывать :)

Вам нужно экспортировать товары из магазина в прайс-лист?

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

В admin/uploads должен появиться файл ex.xml открывайте его Экселем и смотрите.

Надіслати
Поділитися на інших сайтах

 

/admin/model/catalog/suppler.php

if (!isset($row[$price]) or empty($row[$price]) or !preg_match('/^[0-9.]+$/', $row[$price])) {
				$n = $row_count;
				$err = date('Y-m-d H:i:s'). " The Product was missed: Row ~= " . $n . " Product code (sku) = " . $row[$cod] . " Invalid price of product = ". $row[$price]. "\n";
				$this->adderr($err);
				continue;
			}

предлагаю заменить

empty($row[$price])

на

$row[$price] == ''

Если подать цену 0, то empty отработает ее как false и соответственно будет ошибка

Invalid price of product

Согласен, если что еще пишите:)

Надіслати
Поділитися на інших сайтах

О навалились,  так и побить могут! :-D

Фух, кажется всем ответил:)

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

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