На 10.07.2019 екипът на Prestashop обяви официалното пускане на версия 1.7.6. Тук ще разгледаме какви са нововъведенията и подобренията в платформата.
Основен акцент на ъпдейта е подобряването на производителноста и качеството на кода.
Промени
Prestashop 1.7.6 в цифри:
- 748 мържнати Pull заявки (сравнено с 210 във версия 1.7.3, 260 във версия 1.7.4 и 448 в 1.7.5)
- 7349 променени файла (294661 вмъквания, 107638 изтривания)
- 4431 мърджнати комити
- 249 отстранени проблема
- 108 човека са взели участие, включително 60 нови допълнения!
Нови функции
Клиентска част
- Нов дизайн за транзакционни имейли (оптимизирани са за мобилни дисплеи), които укрепват връзката с клиентите и подобряват пазаруването.
- Подобрено показване на ценовите детайли (цена на продукта, доставка, данъци и т.н.) на всички ключови етапи на процеса на закупуване, за да се подобрят увереността на клиентите и реализациите.
- New profile menu with direct access to resources (documentation, training, agencies, help center…).
- Ново профилно меню даващо директен достъп до ресурсите (документация, обучение, агенции, помощен център и др.).
- Актуализиран е модула „Коментари за продукти“ добавени са богати фрагменти (rich snippets).
- Напълно реконструирано фасетно търсене (за сортиране и филтриране) на категориите и листингите с добавяне на ценови слайдер.
- Подобрен режим на каталог: сега можете да изберете дали да показвате или да скривате цените на продуктите.
- Подобрена подсистема за управление на валута. Това е основата, която позволява повече персонализиране в следващите версии, като се добавят например персонализирани валути.
- Подобрено SEO за продукти с комбинации.
Административна част
- Управлявайте и преглеждайте транзакционните си имейли директно от нова страница на бек-офиса: Email Theme.
- За да се съберат всички цени на едно и също място, в списъка с продукти е добавена нова колона „Цена (с включен данък)“. С един поглед сега е възможно да се включат както включените данъци, така и изключени цени за всеки продукт.
- Добавени са нови помощни карти на важни страници, за да се подобри софтуерът за качване: Категории, Клиенти, Страници, Служители.
- Динамичен предварителен преглед на резултатите от търсенето е добавен към още страници в системата: Продуктова страница, Категории, CMS.
- Модулът за водния знак е обновен до 1.7 – благодарение на общността. Модулът е наличен в каталога на модула.
- Подобрена система за превод на многоезични модули.
- Секцията за проектиране на бек-офиса е преработена. Сега можете да имате общ преглед на всички характеристики на дизайна (RTL, лого, favicon и тема) и да ги управлявате така, както искате.
- Подобрения в интерфейса за мобилни устройства.
Отстранени бъгове
Фронт офис
- Страницата за поръчка досега продължаваше автоматично от избора на доставчик до избора на плащане, това представляваше голям проблем за някой модули изискващи допълнителни данни от клиента.
- Подобрени проверки за сигурност на виртуалните стоки. Преди всеки, който има правилната връзка (правилен и ключ =… URL параметър) може да изтегли виртуална стока.
- Поправен е дългогодишен проблем, който създава грешка при изчисляването на отстъпката при добавяне на правило за кошница в количка, съдържаща само виртуален продукт.
- Поправема е и грешка при изчисляването на цената на превозвача. Сега цената се изчислява на реалната цена на поръчката, а не на цената, включително след отстъпка
- Полетата DNI сега са задължителни само за държави, които го изискват
- Поправен е и бъг с минималната поръчка
Ядро на платформата
- Темите вече не се нулират след като са вече активни (предотвратено е и нулирането на хоок-овете)
Техническа страна
Технически подобрения
- Добавен е списък с „nightly“ билдовете – от тук
- Мениджъра на преводи в администрацията вече може да управлява наследени преводи на модули, както и модули за symfony
- Добавена е поддръжка за учебни единици (Doctrine Entities) в модули (администрация и клиентска част)
- Изчисляването на цените вече е обхванато от тестове за интеграция, задвижвани от Behat (четими от човека тестове)
- Нова система за шаблони за имейлите, базирана на Twig, заедно със система от ново поколение, която избягва изтеглянето на всички пощенски шаблони; ще позволи по-лесно персонализиране в бъдещите версии
- Нов стандарт за внедряване на CLDR: подобрена локализация на цени и суми, ще позволи създаването на персонализирани валути в бъдещи версии
- Поддръжка за множество мрежи на една и съща страница
- Производителност:
- Подобрен процес на оторизиране на служителите
- Кеширането е въведено при зареждането на модулите
- Броят на SQL заявките при ауторизация на служители е значително намален
- Уеб услуги:
- Понастоящем може да се постигне персонализиране на продукта
- Информацията за комбинацията от продукти в съдържанието на пакета вече е налице
Добавени са нови хоокове
- displayProductActions (Продуктовата страница, близо до бутона за добавяне в количката)
- displayPersonalInformationTop (Страницата за поръчка, преди формата за ауторизация на клиенти)
- additionalCustomerAddressFields (В CustomerAddressFormatter)
- actionProductFlagsModifier (Позволява да персонализирате флаговете на продуктите)
- Form хукове
- Kpi хукове
- Mail генератор на хукове:
- actionListMailThemes
- actionGetMailThemeFolder
- actionBuildLayoutVariables
- actionGetMailLayoutTransformations
Списък с всички хукове може да намерите тук.
Подобрени хукове
- actionProductAdd сега получава id_product_old при дублиране на продукт
Рискови промени във версия 1.7.6
- Новото CLDR имплементация замества старата. Необходими бяха някои промени:
- Моделът за обекти на валутата вече е многоезичен
- Библиотеката IcanBoogie / CLDR е премахната
- Обажданията към Tools::getCldr() връщат PrestaShopException
- Пространството на имената “PrestaShop\PrestaShop\Core\Cldr” е премахнато
- CLDR файловете в директорията “/ translations” са премахнати
- Импортиране – Вече не можете просто да добавяте категории към текущите категории, а импортирате с форсирано ID. Ще трябва да ги зададете всички и първата ще стане категория по подразбиране.)
- Заменена библиотека: PhpExcel (вече не се поддържа) е заменена от PHPSpreadsheet)
- Сравняване на версиите:
- AppKernel::MAJOR_VERSION вече е “7” вместо “17”
- “1.2.4” вече не е по голямо от “1.2.3.4” (вече се интерпретира като “2.3.4”)
- Крайните точки, различни от index.php, са отхвърлени:
- Всички BO крайни точки изискват токен
- AdminModelAdapter.php сега изисква Router в неговия конструктор
- Вече не са налице следните валути: BYR: Беларуски рубли (2000–2016), LTL: литовски литас (края на 2014-12-31), STD: Сао Томе и Принсипи Добра (края на 2017-12-31)
- Други:
- Наклонените черти вече не се премахват от променливите $_GET и $_POST
- src/Core/Addon/Module/ModuleManager.php::_construct() получава инстанция на CacheClearerInterface вместо CacheClearer
- Разрешенията за файлове, създадени от PrestaShop, вече не са зададени на 0777. Разрешенията вече са зададени на 0755 за директории и 0644 за файлове
- За да се предотврати многократното включването на jQuery, вече не е възможно да добавите jQuery в BO контролерите въз основа на новата тема, използвайки addJquery ()
- Съобщенията за грешки вече не се извеждат автоматично HTML-а
Източник: Prestashop