Модуль Полезные модификации Prestashop 1.7

fortuner

Хранитель порядка
Регистрация
26 Июн 2012
Сообщения
631
Реакции
1.241
Делимся полезными модификациями, хаками, допиленными модулями (или самописными) для Prestashop 1.7.
Предлагаю скопировать правила из темы модулей Prestashop, чтобы в теме было проще ориентироваться.
Правила:
1. Увидели чужую ошибку - исправьте :)
2. Запросы "а сделайте мне то-то" пожалуйста пишите в тему "Помощь с Prestashop".
3. Не спамьте, пусть раздел будет соответствовать своему названию :)
4. Не пишите "спасибо, должен навеки вечные!", просто нажмите "спасибо".
 
Есть новости по новой почте. Она почти готова. С доставкой на отделение или адрес, программой лояльности и всем, что пожелаешь.
По учету заказов - пишите в личку
подскажи пож на 1,6 планируется или только пока на 1,7 ... также хотелось бы узнать цену модуля +-
 
Прощу прощения если не в той теме. Кто нибудь находил модуль для отображение разных цен для разных групп покупателей? т.е. что бы покупатель со скидкой 10% видел старую цену
 
Прощу прощения если не в той теме. Кто нибудь находил модуль для отображение разных цен для разных групп покупателей? т.е. что бы покупатель со скидкой 10% видел старую цену
В настройках группы вроде есть Показывать цену. Она и есть как для всех
 
Спасибо, он работает очень хорошо, но не показано "In stock"
Скачал этот модуль ps_searchbar, но его не видит Presta ни 1.6 ни 1.7. В чем может быть проблема? Скачал тут
Скрытое содержимое доступно для зарегистрированных пользователей!
 

Вложения

  • 2020-07-02_11-33-03.jpg
    2020-07-02_11-33-03.jpg
    101,4 KB · Просмотры: 9
  • 2020-07-02_11-37-11.jpg
    2020-07-02_11-37-11.jpg
    110,5 KB · Просмотры: 9
Его нет в самой админ панели. В вкладке "списки модулей"

Попробуйте переименовать папку в ps_searchbar

Иногда, это может помочь, у меня так модуль "Карта сайта Google sitemap" не становился, выдавал море ошибок. Решение было следующее -> Распаковать скачанный архив - Открыть файл "config.xml" -> Взять оттуда название, оно между тегами <name> - > Этим названием переименовать папку с модулем -> Создаем архив -> Ставим его через админ панель

Если честно, я хз почему оно работает магическим способом, но помогает :D
 
Попробуйте переименовать папку в ps_searchbar
Если честно, я хз почему оно работает магическим способом, но помогает :D
Для просмотра ссылки Войди или Зарегистрируйся скачал модуль с Гитхаба, а он к имени архива добавляет свою приставку "master".
По правилам Prestashop имя папки модуля и внутри этой папки основной файл *.php должны быть одинаковыми.
В Вашем случае папка ps_searchbar-master , а внутри неё ps_searchbar.php
Для просмотра ссылки Войди или Зарегистрируйся правильно написал - переименуйте папку "ps_searchbar-master" в "ps_searchbar"
 
Как сделать на фронте сайта валюту по-умолчанию всегда ГРН, а в админке хранить стоимость товаров в любой удобной вам (EUR, USD и т.п.:(

просто создайте файл оверрайдов
/override/classes/Tools.php

с содержанием:

Код:
<?php
class Tools extends ToolsCore
{
    public static function setCurrency($cookie)
    {
        if (Tools::isSubmit('SubmitCurrency') && ($id_currency = Tools::getValue('id_currency'))) {
            /** @var Currency $currency */
            $currency = Currency::getCurrencyInstance((int) $id_currency);
            if (is_object($currency) && $currency->id && !$currency->deleted && $currency->isAssociatedToShop()) {
                $cookie->id_currency = (int) $currency->id;
            }
        }


//webpc
if (!(int)$cookie->id_currency) $cookie->id_currency = 1;        // 1 - это номер валюты, которую делаем на фронте постоянной по-умолчанию (как правило это ГРН, а в настройках локализации сайта выбираем любую другую валюту по умолчанию, например USD или EUR)

        $currency = null;
        if ((int) $cookie->id_currency) {
            $currency = Currency::getCurrencyInstance((int) $cookie->id_currency);
        }
        if (!Validate::isLoadedObject($currency) || (bool) $currency->deleted || !(bool) $currency->active) {
            $currency = Currency::getCurrencyInstance(Configuration::get('PS_CURRENCY_DEFAULT'));
        }

        $cookie->id_currency = (int) $currency->id;
        if ($currency->isAssociatedToShop()) {
            return $currency;
        } else {
            // get currency from context
            $currency = Shop::getEntityIds('currency', Context::getContext()->shop->id, true, true);
            if (isset($currency[0]) && $currency[0]['id_currency']) {
                $cookie->id_currency = $currency[0]['id_currency'];

                return Currency::getCurrencyInstance((int) $cookie->id_currency);
            }
        }

        return $currency;
    }
}

P.S. работает в том числе и на самых новых ядрах 1.7.6.х

Подскажите, пожалуйста, у меня, когда использую этот способ для реализации 2-х валют на сайте, есть проблема при редактировании заказа в админке: если к заказу добавить товар, то происходит неправильный расчет итоговой суммы заказа (сумма в гривне умножается на курс доллара:(
Для просмотра ссылки Войди или Зарегистрируйся
Это у всех так, или у меня какой-то индивидуальный глюк?

P.S. Prestashop 1.7.6.5, одна и та же проблема и на рабочем сайте с кучей разных модулей, и на тестовом, со стандартным шаблоном и без дополнительных модулей.
 
для улучшения страницы редактирования товара, т.е. назначение связей товаров на категории:

полное отображение всей длины названия категории + перенос галочки для указания дефолтной категории

добавить в конец файла:

/YourAdmin/themes/new-theme/public/theme.css

Код:
/* webPCstudio */
.product-page .category-tree-overflow {
    /*white-space: normal !important; */
    overflow: visible !important;
}

.product-page .category-tree-overflow ul.category-tree label .default-category {
    top: 4px;
    left: -40px;
}

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