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

Статус
В этой теме нельзя размещать новые ответы.
Коллеги, кто сталкивался с такой задачей - у товаров есть цвета, цвета заданы картинками, их очень много и абсолютно разные, как можно организовать фильтр по "базовому" цвету?
Штатными блокареедами не получается, advanced search -ем похоже тоже.
Кто-то может помочь добрым словом? ))))
 
Все еще в поиске Seo Internal Linking для Prestashop 1.6.0.9
 
Помогите пожалуйста...Модуль универсальной оплаты не работает с One Page Checkout, насколько я понял это из-за того, что я использую устаревшую версию модуля OPC. У кого есть актуальная версия, работающая с универсальной оплатой – поделитесь пожалуйста..
 
Привет. Можно ли при использовании модуля One Page Checkout for PS 1.6 v2.2.9 - by Zelarg убрать строки "e-mail" и "город"? Что нужно сделать?
 
Помогите пожалуйста...Модуль универсальной оплаты не работает с One Page Checkout, насколько я понял это из-за того, что я использую устаревшую версию модуля OPC. У кого есть актуальная версия, работающая с универсальной оплатой – поделитесь пожалуйста..

Какой именно модуль opc у вас?

Привет. Можно ли при использовании модуля One Page Checkout for PS 1.6 v2.2.9 - by Zelarg убрать строки "e-mail" и "город"? Что нужно сделать?

Править tpl и контроллер OrderOpc тот что override
 
Какой именно модуль opc у вас?

У меня One Page Checkout for Prestashop v2.3.2 - by Zelarg и Универсальный модуль оплаты v1.9 - by PrestaLab.Ru.
В связке получается следующее..(не отображаются способы оплаты).Знімок екрана 2014-11-09 о 15.47.54.png
 
Мешает отсутствие установленного сервера IIS, но для общего развития как нибудь попробую Для просмотра ссылки Войди или Зарегистрируйся
Править сразу в базе не вариант. Мне просто все на 10% умножить :) Одним ходом всех убить
Работаю с apache и вы мне напомнили про хук с выгрузкой базы в ecxel
Давно я не страдал с DBConvert for MS Access & MySQL. Есть случайно такой у меня
Кривой способ конечно, как и все предложенные ранее
Странно, что у форумчан нет случайно рабочего модуля для выгрузки в CSV Чтобы к моей версии подходило.
Самый простой модуль присутствующий во всех магазинах, кроме престы. От 10 строчек кода )))


Для русскоязычных магазинов EXCEL не годится, Там нет замен кодировок, Для кирилицы и прочих языков не Англ. нужна кодировка UNICODE UTF-8
ЭТУ Функцию решает только OPEN-OFFICE бесплатная программа, но
1, Не Заменима при Преста СЭО ps-category_lang, ps_product, ps-product_lang и подобных
2. Правки цен
3, Правки колличества
4, Правки Атрибутов, их значений и кодов ЕAN UPC
да малоли чего ёщё одним жахом и с потдержкой UTF-8 кирилицы
 
Для русскоязычных магазинов EXCEL не годится, Там нет замен кодировок, Для кирилицы и прочих языков не Англ. нужна кодировка UNICODE UTF-8
ЭТУ Функцию решает только OPEN-OFFICE бесплатная программа, но
1, Не Заменима при Преста СЭО ps-category_lang, ps_product, ps-product_lang и подобных
2. Правки цен
3, Правки колличества
4, Правки Атрибутов, их значений и кодов ЕAN UPC
да малоли чего ёщё одним жахом и с потдержкой UTF-8 кирилицы


Не верно. всё дело в BOM.
Byte Order Mark (BOM) - Unicode символ, используемый для индикации порядка байтов (порядка байт) текстового файла. Его кодовый символ U+FEFF. По спецификации его использование не является обязательным, однако если BOM используется, то он должен быть установлен в начале текстового файла. Помимо своего конкретного использования в качестве указателя порядка байтов, символ может также указать какой кодировкой Unicode закодирован текст.

UTF-8 с BOM excel нормально открывает)
 
ECXEL очень даже годится. Открыл в Notepade+ как ANSI as UTF Правил в ecxel и ничего не поменялось

Hастроил с горем пополам представленные ранее скрипты
выгрузил
/артикул; наименование; количество; цена/ в CSV и открыл в ECXEL
поправил цену и залил в базу. Свою задачу выполнил.
Все нормально, кроме выгрузки в файл "наименования" НЕ выгружается
Вот код, что может быть не так
Код:
 <?php
$lang = 2;
            $sql='SELECT p.`id_product`, '.implode(', ', $fields).'
            FROM '._DB_PREFIX_.'product as p
            LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (pl.`id_product` = p.`id_product`)
            WHERE pl.`id_lang`=' . $lang . ' GROUP BY p.`id_product`
            ';
          
            $delimiter = $_REQUEST['delimiter'];
            $exportlist = Db::getInstance()->ExecuteS($sql);
  
            $fileName = 'products_stream.csv';
            header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
            header('Content-Description: File Transfer');
            header("Content-type: text/csv");
            header("Content-Disposition: attachment; filename={$fileName}");
            header("Expires: 0");
            header("Pragma: public");

            $f = @fopen( 'php://output', 'w' );
          
            fwrite($f, implode($delimiter, $titles) . "\r\n");

            foreach($exportlist AS $export) {
                $product = new Product($export['id_product'], true, $lang);
                $tags = array();
                $accessories = array();
                $export_final = array();
                $imagelinks = array();
                $cats = array();
              
                if(isset($export['id_category_default'])) {
                    $categories = $product->getIndexedCategories($export['id_product']);
                    foreach($categories as $cat) {
                        $category = new Category($cat['id_category'], $lang);
                        $cats[] = $category->name;
                    }
                    $export['id_category_default'] = implode(",", $cats);
                }
              
                if($inc_images) {
                    $link = new Link();
                    $images = $product->getImages($export['id_product']);
                    foreach($images as $image) {
                        $imagelinks[] = "http://" . htmlspecialchars($_SERVER['HTTP_HOST'], ENT_COMPAT, 'UTF-8').$link->getImageLink($product->link_rewrite, $product->id .'-'. $image['id_image']);
                    }
                    $export['images'] = implode(",", $imagelinks);
                }
              
                if(isset($export['id_manufacturer'])) {
                    $export['id_manufacturer'] = $product->manufacturer_name;
                }
              
                if(isset($export['meta_description'])) {
                    $export['meta_description'] = $product->meta_description;
                }
              
                if(isset($export['meta_title'])) {
                    $export['meta_title'] = $product->meta_title;
                }
              
                if(isset($export['meta_keywords'])) {
                    $export['meta_keywords'] = $product->meta_keywords;
                }
                if(isset($export['id_supplier'])) {
                    $export['id_supplier'] = $product->supplier_name;
                }
              
                if(isset($export['id_tax'])) {
                    $export['id_tax'] = $product->tax_rate;
                }
              
                if(isset($inc_tags))
                {
                    $export['tags'] = $product->getTags(1);
                }

                if(isset($inc_accessories)) {
                  
                    if($acc = $product->getAccessories(1, false)) {
                        foreach($acc as $acc_key => $acc_value)
                        {
                            $accessories[] = $acc_value['reference'];
                        }
                        $export['accessories'] = implode(',', $accessories);
                    } else {
                        $export['accessories'] = '';
                    }
                }
              
                if($_REQUEST['wcurrency'] == 1) {
                $params['currency'] = Tools::setCurrency();
                    if(isset($export['price'])) {
                        $params['price'] = $product->price;
                        $export['price'] = $product->displayWtPriceWithCurrency($params, $smarty);
                    }
              
                    if(isset($export['wholesale_price'])) {
                        $params['price'] = $product->wholesale_price;
                        $export['wholesale_price'] = $product->displayWtPriceWithCurrency($params, $smarty);
                    }
                }
                foreach($export_fields as $field => $value) {
                        $export_final[$field] = iconv("UTF-8", "cp1250//TRANSLIT", $export[$field]);
                }
                  
                fputcsv($f, $export_final, $delimiter, '"');
              
            }
            fclose($f);
?>
сам не понял где класс Product в престе и что он там не выдает
по ощущения, что вот здесь что-то не то

Код:
foreach($exportlist AS $export) {
                $product = new Product($export['id_product'], true, $lang);
У кого был такой трабл
 
Последнее редактирование:
ECXEL очень даже годится. Открыл в Notepade+ как ANSI as UTF Правил в ecxel и ничего не поменялось

Hастроил с горем пополам представленные ранее скрипты
выгрузил
/артикул; наименование; количество; цена/ в CSV и открыл в ECXEL
поправил цену и залил в базу. Свою задачу выполнил.
Все нормально, кроме выгрузки в файл "наименования" НЕ выгружается
Вот код, что может быть не так
Код:
$lang = 2;
            $sql='SELECT p.`id_product`, '.implode(', ', $fields).'
            FROM '._DB_PREFIX_.'product as p
            LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (pl.`id_product` = p.`id_product`)
            WHERE pl.`id_lang`=' . $lang . ' GROUP BY p.`id_product`
            ';
          
            $delimiter = $_REQUEST['delimiter'];
            $exportlist = Db::getInstance()->ExecuteS($sql);
  
            $fileName = 'products_stream.csv';
            header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
            header('Content-Description: File Transfer');
            header("Content-type: text/csv");
            header("Content-Disposition: attachment; filename={$fileName}");
            header("Expires: 0");
            header("Pragma: public");

            $f = @fopen( 'php://output', 'w' );
          
            fwrite($f, implode($delimiter, $titles) . "\r\n");

            foreach($exportlist AS $export) {
                $product = new Product($export['id_product'], true, $lang);
                $tags = array();
                $accessories = array();
                $export_final = array();
                $imagelinks = array();
                $cats = array();
              
                if(isset($export['id_category_default'])) {
                    $categories = $product->getIndexedCategories($export['id_product']);
                    foreach($categories as $cat) {
                        $category = new Category($cat['id_category'], $lang);
                        $cats[] = $category->name;
                    }
                    $export['id_category_default'] = implode(",", $cats);
                }
              
                if($inc_images) {
                    $link = new Link();
                    $images = $product->getImages($export['id_product']);
                    foreach($images as $image) {
                        $imagelinks[] = "http://" . htmlspecialchars($_SERVER['HTTP_HOST'], ENT_COMPAT, 'UTF-8').$link->getImageLink($product->link_rewrite, $product->id .'-'. $image['id_image']);
                    }
                    $export['images'] = implode(",", $imagelinks);
                }
              
                if(isset($export['id_manufacturer'])) {
                    $export['id_manufacturer'] = $product->manufacturer_name;
                }
              
                if(isset($export['meta_description'])) {
                    $export['meta_description'] = $product->meta_description;
                }
              
                if(isset($export['meta_title'])) {
                    $export['meta_title'] = $product->meta_title;
                }
              
                if(isset($export['meta_keywords'])) {
                    $export['meta_keywords'] = $product->meta_keywords;
                }
                if(isset($export['id_supplier'])) {
                    $export['id_supplier'] = $product->supplier_name;
                }
              
                if(isset($export['id_tax'])) {
                    $export['id_tax'] = $product->tax_rate;
                }
              
                if(isset($inc_tags))
                {
                    $export['tags'] = $product->getTags(1);
                }

                if(isset($inc_accessories)) {
                  
                    if($acc = $product->getAccessories(1, false)) {
                        foreach($acc as $acc_key => $acc_value)
                        {
                            $accessories[] = $acc_value['reference'];
                        }
                        $export['accessories'] = implode(',', $accessories);
                    } else {
                        $export['accessories'] = '';
                    }
                }
              
                if($_REQUEST['wcurrency'] == 1) {
                $params['currency'] = Tools::setCurrency();
                    if(isset($export['price'])) {
                        $params['price'] = $product->price;
                        $export['price'] = $product->displayWtPriceWithCurrency($params, $smarty);
                    }
              
                    if(isset($export['wholesale_price'])) {
                        $params['price'] = $product->wholesale_price;
                        $export['wholesale_price'] = $product->displayWtPriceWithCurrency($params, $smarty);
                    }
                }
                foreach($export_fields as $field => $value) {
                        $export_final[$field] = iconv("UTF-8", "cp1250//TRANSLIT", $export[$field]);
                }
                  
                fputcsv($f, $export_final, $delimiter, '"');
              
            }
            fclose($f);
сам не понял где класс Product в престе и что он там не выдает
по ощущения, что вот здесь что-то не то

Код:
foreach($exportlist AS $export) {
                $product = new Product($export['id_product'], true, $lang);
У кого был такой трабл
а язык 2 существует?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху