Модули для PrestaShop - 2 часть

Статус
В этой теме нельзя размещать новые ответы.
Если вы уже получили один раз отлуп, то значит записался 0 в базу вместо 1. Надо поставить значение OPC_RM в таблице конфигурации на 1 вместо 0 вручную.
меняю на 1, работает 3 минуты и опять блок. Там в коде еще что-то есть я думаю
 
возможность осуществления звонков с сайта на скайп при клике на ссылку


<head>
...
<script type="text/javascript"
src="Для просмотра ссылки Войди или Зарегистрируйся">
</script>
</head>

<a href="skype:motor-agro.com.ua?call" onclick="return skypeCheck()">motor-agro.com.ua</a>

особенно актуально для планшетов
 
меняю на 1, работает 3 минуты и опять блок. Там в коде еще что-то есть я думаю
В настройках модуля всё окей, ничего не скидывается.
А вот как его во фронтенде заставить работать - я так и не понял, при оформлении заказа уходит в циклическую перезагрузку.
 
Привет, ребят поделитесь плз модулем который может показывать в карточке товара похожие товары или товары из это й же категории автоматически.
Спасибо заранее!!!

Да, я его включил но хотелось еще например дополнительное условие, чтобы модуль сам по ключевым словам отбирал похожие товары а не вываливал все подряд из категории, тем более всю категорию покупатель может посмотреть и в другом месте.
Спасибо!

Ребят, неужели не существует такого модуля?
Может завалялся у кого?
 
Ребят, неужели не существует такого модуля?
Может завалялся у кого?

предлагаю допиливание модуля "Товары из этой же категории"

В файле .../modules/productscategory/productscategory.php нужно добавить нижеследующий метод:

/*********************
* $prod_id - id товара, по свойствам которому производится поиск
* $id_feature - id свойства, продукты с которым будут находится
* $limit - максимальное кол-во таваров в выдаче
*
* result - array
*/
public function getProductsByFeature($prod_id, $id_feature, $limit = 100){

$sql_prod = 'SELECT fpl.value FROM `'._DB_PREFIX_.'product` p
LEFT JOIN `'._DB_PREFIX_.'feature_product` fp
ON (fp.`id_product` = p.`id_product`)
LEFT JOIN `'._DB_PREFIX_.'feature_value_lang` fpl
ON (fpl.`id_feature_value` = fp.`id_feature_value`)
WHERE fp.`id_feature`=' . $id_feature .
' AND p.`id_product`=' . $prod_id;

$prod_f = current(Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow($sql_prod));
$id_shop = Context::getContext()->shop->id;

$sql = 'SELECT p.*, i.*, pl.*
FROM `'._DB_PREFIX_.'product` p
LEFT JOIN `'._DB_PREFIX_.'product_lang` pl
ON (pl.`id_product` = p.`id_product`)
LEFT JOIN `'._DB_PREFIX_.'feature_product` fp
ON (fp.`id_product` = p.`id_product`)
LEFT JOIN `'._DB_PREFIX_.'feature_value_lang` fpl
ON (fpl.`id_feature_value` = fp.`id_feature_value`)
LEFT JOIN `'._DB_PREFIX_.'image` i
ON (i.`id_product` = p.`id_product`)
WHERE fpl.`value`="' . $prod_f . '"
AND pl.`id_shop`=' . $id_shop;


$sql .= ' LIMIT 0,' . $limit;

$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql);

return $result;
}


В этом же файле нужно найти метод hookProductFooter(), а в нём строку:

$categoryProducts = $category->getProducts($this->context->language->id, 1, 100); /* 100 products max. */

заменить на:

$categoryProducts = $this->getProductsByFeature((int)$product->id, 2, 30);

if (count($categoryProducts) == 0)
$categoryProducts = $category->getProducts($this->context->language->id, 1, 30);

ID свойства, продукты с которым будут находится нужно смотреть в таблицах feature_product и feature_value_lang


и получится выборка товаров не из этой же категории, а выборка по сходному единому свойству товара

успехов!
 
предлагаю допиливание модуля "Товары из этой же категории"

В файле .../modules/productscategory/productscategory.php нужно добавить нижеследующий метод:

/*********************
* $prod_id - id товара, по свойствам которому производится поиск
* $id_feature - id свойства, продукты с которым будут находится
* $limit - максимальное кол-во таваров в выдаче
*
* result - array
*/
public function getProductsByFeature($prod_id, $id_feature, $limit = 100){

$sql_prod = 'SELECT fpl.value FROM `'._DB_PREFIX_.'product` p
LEFT JOIN `'._DB_PREFIX_.'feature_product` fp
ON (fp.`id_product` = p.`id_product`)
LEFT JOIN `'._DB_PREFIX_.'feature_value_lang` fpl
ON (fpl.`id_feature_value` = fp.`id_feature_value`)
WHERE fp.`id_feature`=' . $id_feature .
' AND p.`id_product`=' . $prod_id;

$prod_f = current(Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow($sql_prod));
$id_shop = Context::getContext()->shop->id;

$sql = 'SELECT p.*, i.*, pl.*
FROM `'._DB_PREFIX_.'product` p
LEFT JOIN `'._DB_PREFIX_.'product_lang` pl
ON (pl.`id_product` = p.`id_product`)
LEFT JOIN `'._DB_PREFIX_.'feature_product` fp
ON (fp.`id_product` = p.`id_product`)
LEFT JOIN `'._DB_PREFIX_.'feature_value_lang` fpl
ON (fpl.`id_feature_value` = fp.`id_feature_value`)
LEFT JOIN `'._DB_PREFIX_.'image` i
ON (i.`id_product` = p.`id_product`)
WHERE fpl.`value`="' . $prod_f . '"
AND pl.`id_shop`=' . $id_shop;


$sql .= ' LIMIT 0,' . $limit;

$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql);

return $result;
}


В этом же файле нужно найти метод hookProductFooter(), а в нём строку:

$categoryProducts = $category->getProducts($this->context->language->id, 1, 100); /* 100 products max. */

заменить на:

$categoryProducts = $this->getProductsByFeature((int)$product->id, 2, 30);

if (count($categoryProducts) == 0)
$categoryProducts = $category->getProducts($this->context->language->id, 1, 30);

ID свойства, продукты с которым будут находится нужно смотреть в таблицах feature_product и feature_value_lang


и получится выборка товаров не из этой же категории, а выборка по сходному единому свойству товара

успехов!

В общем добавил эти строки в файл. Очистил кэш, но ни чего не изменилось...
id_feature - что это в карточке товара?
В настройках модуля тоже ни чего не поменялось...
подскажите как правильно тут поступить?! спс!

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

В файле .../modules/productscategory/productscategory.php нужно добавить нижеследующий метод:

/*********************
* $prod_id - id товара, по свойствам которому производится поиск
* $id_feature - id свойства, продукты с которым будут находится
* $limit - максимальное кол-во таваров в выдаче
*
* result - array
*/
public function getProductsByFeature($prod_id, $id_feature, $limit = 100){

$sql_prod = 'SELECT fpl.value FROM `'._DB_PREFIX_.'product` p
LEFT JOIN `'._DB_PREFIX_.'feature_product` fp
ON (fp.`id_product` = p.`id_product`)
LEFT JOIN `'._DB_PREFIX_.'feature_value_lang` fpl
ON (fpl.`id_feature_value` = fp.`id_feature_value`)
WHERE fp.`id_feature`=' . $id_feature .
' AND p.`id_product`=' . $prod_id;

$prod_f = current(Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow($sql_prod));
$id_shop = Context::getContext()->shop->id;

$sql = 'SELECT p.*, i.*, pl.*
FROM `'._DB_PREFIX_.'product` p
LEFT JOIN `'._DB_PREFIX_.'product_lang` pl
ON (pl.`id_product` = p.`id_product`)
LEFT JOIN `'._DB_PREFIX_.'feature_product` fp
ON (fp.`id_product` = p.`id_product`)
LEFT JOIN `'._DB_PREFIX_.'feature_value_lang` fpl
ON (fpl.`id_feature_value` = fp.`id_feature_value`)
LEFT JOIN `'._DB_PREFIX_.'image` i
ON (i.`id_product` = p.`id_product`)
WHERE fpl.`value`="' . $prod_f . '"
AND pl.`id_shop`=' . $id_shop;


$sql .= ' LIMIT 0,' . $limit;

$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql);

return $result;
}


В этом же файле нужно найти метод hookProductFooter(), а в нём строку:

$categoryProducts = $category->getProducts($this->context->language->id, 1, 100); /* 100 products max. */

заменить на:

$categoryProducts = $this->getProductsByFeature((int)$product->id, 2, 30);

if (count($categoryProducts) == 0)
$categoryProducts = $category->getProducts($this->context->language->id, 1, 30);

ID свойства, продукты с которым будут находится нужно смотреть в таблицах feature_product и feature_value_lang


и получится выборка товаров не из этой же категории, а выборка по сходному единому свойству товара

успехов!

а теперь оформи это в модуль, чтобы в настройках можно было выбрать по каким свойствам подтягивать похожий товар - и можешь смело продавать по 100 евро на сайте престы. Вот этот их "товары из категории" - булшит какой-то, зачем вообще кому-то нужно выводить эти товары из категории, не имея даже элементарной возможности отсортировать их как-то или отфильтровать
 
Для просмотра ссылки Войди или Зарегистрируйся
Мне вот этот модуль понравился, может есть у кого или можно скинуться купить его, стоит кажется 1800 руб, но не уверен, продавец иногда меняет цену, готов дать 300р.
я автор этого самого модуля...у меня есть списки тех кто нормально купил официально, все остальные складчины итд обойдутся без поддержки и обновлений, мой скайп d-link570 цена 1700р если кому интересно, жду.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху