Модуль YandexCMSModule Prestashop

Поделюсь своим опытом борьбы за работоспособность yandexmodule.

Преста при любых правках товара, в поля "Описание" и "Краткое описание" добавляет тэги <p>...</p>, что очень не нравится Яндексу.
Пришлось делать правки в /modules/yandexmodule/classes/YandexMarket/Offer.php
Вставляя функцию strip_tags()

строка 668:
Код:
    public function getDescription()
    {
        return strip_tags($this->description);
    }

строка 1230:
Код:
    public function addCustomTag($tag, $value, $join)
    {
        if (!isset($this->customTags[$tag]) || !in_array($value, $this->customTags[$tag])) {
            $this->customTags[$tag][] = strip_tags($value);
        }
        $this->customTagsJoin = $this->customTagsJoin || $join;
        return $this;
    }

PrestaShop 1.6.1.23, Модуль Y.CMS 2.0, Module version 1.1.5
 
Потом при проверке оказалось, что далеко не все товары выгружаются в XML.
Замечания по проверке качества:
"-Cайт магазина в разработке (Сайт не должен находится в стадии разработки или наполнения контентом...)"

В ходе переписки с поддержкой Яндекса, прозвучала фраза: "... и был заполнен товарными предложениями без пустых категорий." - вот в чем дело то!

После разбирательств с Престой выяснилась такая вещь, что при стандартном импорте товаров нельзя указать напрямую "Категорию по умолчанию"! и она выставлялась на товарах с несколькими категориями как то случайно, возможно в первую в списке, но надо проверять... и вот этот "Модуль Y.CMS", чтоб ему пусто было! не выгружает такие товары вообще!

Так вот с этой бедой помогли скрипты для MySQL.

Первый добавляет отсутствующие категории в ps_category_product (почему их там половины не было... х.з.)
Код:
INSERT IGNORE INTO ps_category_product 
    SELECT p.id_category_default as id_category, p.id_product , 0 as position
    FROM ps_product p;

Второй устанавливает для товара категорию по умолчанию по наибольшему ID-категории.
Код:
update ps_product_shop p, ( 
    SELECT cp.id_product , MAX(cp.id_category) as maxcateg
    FROM  ps_category_product cp 
    GROUP BY cp.id_product) cp
set p.id_category_default = cp.maxcateg
where p.id_product = cp.id_product

Надеюсь, кому то поможет!
(буду благодарен за любые замечания по предложенным методам!)
 
Ну и для полноты коллекции:
Установка не активности всем товарам. Выполнять это перед импортом!:
Код:
UPDATE `ps_product`      SET `active` = 0;
UPDATE `ps_product_shop` SET `active` = 0;

Надеюсь понятно, что в импорте вы укажите, каким товарам быть активированными!
 
кто нибудь редактировал версию 2 модуля чтобы заказ оформлялся только после фактической оплаты?
или поделитесь платной версией с addons пожалуйста у кого есть, там вроде есть решение этого, переключатель когда формировать заказ.
 
Последнее редактирование:
если платный от seosa, то вообще оплата не работала у него, может что поменялось.
 
В модуле выгрузки прайс листа на Яндекс - yandexmodule проблема, после переключения SEO, в файле выгрузки прайс листа все картинки начали задваиваться!
Решение, включить проверку на повтор картинки:
файл /modules/yandexmodule/classes/YandexMarket/YmlBuilder.php
Строка: 189
Код:
        if ($offer->hasPictures()) {
            foreach ($offer->getPictures() as $picture) {
                if ($mpic !== $picture) {
                    $result .= '        <picture>' . $this->prepareValue($picture) . '</picture>' . PHP_EOL;
                }
                $mpic = $picture;
            }
        }
 
есть у кого нибудь Модуль Y.CMS 2.0 для Prestashop с формированием заказа только после фактической оплаты?
 
Y.CMS 2.0 все-таки платный. Для оплаты по безналу 3000р. просють для платежки. Есть что-нибудь альтернативное? Надо: оплата по налу, безналу на счет и может на карту, а не на яндекс.деньги, с которых без процентов деньги хрен выведешь. И может здесь вопрос не совсем уместный, но как отладить под андроид в ucbrowser mobile версию, а то в desktop версии в google chrome есть посмотреть код и все понятно где что править в css и в php коде. Эти стрелочки вниз хрен нажмешь, из-за этого не видно подкатегорий из мобильной версии.
 

Вложения

  • Screenshot_2019-05-15-15-40-08-643_com.UCMobile.intl.png
    Screenshot_2019-05-15-15-40-08-643_com.UCMobile.intl.png
    80,3 KB · Просмотры: 23
Ребята, кто подскажет.
Версия движка: 1.6.1.4
Модуль оплаты: Y.CMS Prestashop v1.3.11 - от Яндекс.Деньги (ставил и Модуль Y.CMS 2.0 для Prestashop). В общем настраиваю все по правилам яндекс кассы, но модуль не появляется на странице оформления заказа в разделе оплата: Для просмотра ссылки Войди или Зарегистрируйся Подскажите куда копать?
 
Что значит, "модуль не появляется на странице"?
Есть три закладки: Яндекс.Касса, Яндекс.Деньги, Яндекс.Платежка
Включается только что-то одно.
И появляются дополнительные способы оплаты:

upload_2019-7-2_15-24-26.png
 
Назад
Сверху