Вийшла нова версія Okay CMS 3.6.0

Категорії

Спершу розповімо, які фичи (поліпшення) увійшли в нову версію.

Повністю перероблений функціонал вивантажень в XML. Тепер використовуються небуферізірованние запити. Це дозволяє нормально обробляти вивантаження з великою кількістю товарів в них.

По простому, вивантаження стануть працювати швидше і краще.

Зроблено кеш роутера, щоб для генерації урла на стратегіях де використовується шлях категорій не потрібно було їх постійно перегенерівать

По простому, тепер все ситуації коли потрібно побудувати посилання з урахуванням категорії будуть відпрацьовувати швидше

Зробили передачу параметра group_id в YML вивантаження. Це дозволить більш коректно вивантажувати товари певних категорій в Яндекс.Маркет. Більш докладно можна почитати за посиланням

Якщо раніше товари однієї моделі але різних кольорів або розмірів (з різними варіантами) вивантажувалися як повністю різні товари, то тепер йде вказівка, що вони всі ставляться до однієї моделі і Яндекс.Маркет (та інші агрегатори) зможуть об'єднати їх в одну картку товару з різними варіантами .

Додаткові мови для системи винесені в окрему гілку на GitHub. На даний момент там доступні грузинський і французький мови. За французька мова окрема подяка Юрію Бондаренко. В адмін. панелі, на сторінці мов сайту додали посилання на GitHub з додатковими мовними версіями.

Навіщо ми це зробили? Тепер, по-перше, якщо хтось знайде помилку в додатковому мовою, він зможе виправити це просто надіславши нам пулреквест і ми зможемо опублікувати це відразу, а не відкладати до виходу нової версії. Також у версії за умовчанням не буде мов, які нам проблемно підтримувати і тримати постійно в актуальному стані.

Зробили так, що якщо в файлі переказів не буде якогось перекладу, він буде виводитися на клієнтської частини на мові за замовчуванням, а в адмін. частини англійською мовою.

Іноді розробники модулів або шаблонів не додають переклади всіма мовами. Якщо раніше в таких випадках не відображалося нічого і можна було зустріти кнопку без тексту, то тепер буде виводитися переклад з основного мови. Ми вважаємо, що якщо, наприклад, з якоїсь випадковості не заданий переклад для кнопки "Купити", то нехай краще на українській версії виведеться російське слово чому не буде нічого.

Покрили шортблокамі друк замовлення

Раніше через це, розробляючи модулі не можна було створити модуль, який якось змінює друк замовлення. Тепер така можливість з'явилася.

Зробили можливість пошуку в певному статусі. Щоб можна було зробити фільтр по прийнятим, а потім зробити пошук і він стався саме в прийнятих замовленнях.

Також покращили відображення плашки з фільтром після фільтрації в списку товарів в адмін. панелі. Раніше після того як вибрав статус, все одно відображалося "Все статуси"

Переробили модуль Нова Пошта

Тепер список актуальних пунктів видачі не вимагається кожен раз по API Нової Пошти, а скачується один раз на сайт і береться з нього. Це дозволило прискорити роботи цього модуля. Зробили два способи оновлення цих даних, по кнопці в модулі і автоматично, по крону.

Зробили вибір міста не зі списку всіх міст, а з автокомпліта, який з'являється після того як почати вводити перші літери міста. Це також прискорило обробку цього елемента сайту. Переверстати в адмін панелі відображення сторінки модуля, зробили там все набагато зрозумілішим

Зробили так, щоб якщо в файлі перекладу немає перекладу для конкретної фрази, то береться фраза з основного мови.

Додали можливість при створенні модуля вдаватися в відображення товару в замовленні.

Інтегрована бібліотека https://github.com/giggsey/libphonenumber-for-php для роботи з телефоном (спасибі makki). В налаштуваннях сайту з'явилася можливість вибрати регіон за замовчуванням для форматування номера телефону і формат за замовчуванням.

Телефон країни можна вводити тепер без коду або з повним кодом країни.

Для введення телефону інших країн його потрібно вводити в міжнародному форматі. Телефон в базі зберігається в чистому вигляді, без дужок, дефісів та іншого. Це дуже корисно, коли телефон потрібно надалі використовувати для відправки смс та іншого. На виведення, для клієнтів телефон виглядає відповідно до настройками "Формат за замовчуванням"

Створили окремий .local для перекладів, щоб можна було вести проекти на гіті. Тепер навіть якщо проект на гіті, клієнт може правити переклади.

Проблема з якою ми зіткнулися: Клієнти будучи на гіті часто хочуть правити переклади з адмінки.

Рішення: Зробили так щоб переклади з адмінки зберігалися в певний .local файл, і бралися звідти - якщо є. Цей файл не буде вестися по Гіту і тоді клієнт зможе редагувати переклади з адмінки. Зроблено це в модулі ведення проектів на GIT

Зробили інформаційний блок із статистикою на сторінці замовлень. В даному блоці видно статистика за кількістю замовлень в кожному статусі. При фільтрації замовлень за певний період - статистика перераховується і відображається для зазначеного періоду.

Зробили кнопку сортування властивостей за алфавітом.

Раніше властивості виводилися в тому порядку, як їх додали. Це створювало незручності, особливо коли властивості повинні були бути по зростанню, наприклад вага або розмір. Так, їх можна було виставити вручну в потрібному порядку, але на великій кількості властивостей це було незручно. Крім того, навіть виставивши все вручну, а потім додавши нове значення, потрібно було його додати в потрібне місце вручну. Тепер можна натиснути кнопку і все значення цієї властивості в адмінці і на клієнтської частини відсортують за алфавітом.

Важливий момент. Вони відсортують саме за алфавітом, а не по зростанню, тому якщо є ось такі моменти, як на скріншоті знизу, їх все одно потрібно буде налаштовувати вручну.

Переробили відображення попереджень, повідомлень і подсказ в адмін. панелі.

Створили спеціальний модуль документації адмін. панелі, щоб розробники модулів і доповнень могли легко глянути, які є попередньо встановлені стилі і використовували їх, щоб адмін панель не була веселкою, а виглядала в загальному стилі.

Переробили відображення коментаря адміністратора до замовлення. Тепер в списку замовлень цей коментар відображається відразу

Раніше ми зробили відстеження джерел замовлення. У цій версії ми допрацювали можливість переходити з адмін. панелі за посиланням-джерела замовлення. Тепер з'явилася можливість швидко перейти на сайт звідки прийшов клієнт і подивитися, що це за сайт.

Виправлена передача знижок з замовлення в 1С

Перероблена робота пошуку. Тепер, якщо знайде один товар, то перекидає відразу в товар, а не на сторінку зі списком товарів.

В налаштуваннях каталогу додана галочка "Приховувати поодинокі фільтри" визначає, чи будуть відображатися фільтри, якщо є тільки один варіант фільтрації по цій властивості.

А також кілька суто технічних фіч для програмістів

При створенні міграції таблиці з модуля, тепер можна створювати складові індекс. Також тепер можна створювати поля з типом даних mediumtext і longtext

Додана реєстрація Смарті плагінів з модулів для адмін-панелі.

Змінено висновок помилок в кошику, перерва все помилки виводяться через elseif (тобто виведеться тільки одна) і останнім варіантів виводиться змінна в значення якої можна передати текст помилки з модуля.

Відповідь Аяксова кошика перенесений в хелпер, таким чином можна з модуля його модифікувати.

У scripts.tpl доданий шортблок front_scripts_after_validate, за допомогою нього можна модифікувати js правила валідації

У всіх листах клієнтам перероблена передача перекладів, тепер в листі клієнта доступні переклади з модулів.

У міграції модулів додана перевірка, що якщо поле відзначено як Primary Key то воно не може бути null

А тепер список фіксів минулій версії

Виправлений баг з сортуванням категорій, якщо розкрити все дерево категорій через плюсик. Раніше перетягує всі категорії, тепер перетягується саме так категорія, яка потрібна.

Виправлено попередження (notice) яке іноді відображалося при завантаженні фотографій через файловий менеджер


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

Допрацювали модуль WayForPay який некоректно поводився, коли в замовленні було більше одного товару. Тепер оплата через цей модуль буде проходити коректно.

Виправили злітати тему під адміном при зміні дозволу в браузері

Після поновлення GoogleChrome став по іншому визначати мобільну версію, і в підсумку якщо включити тему для адміна, перейти під адміном на сайт, і в панелі розробника включити відображення сайту як для мобільних пристроїв, то відображалася основна тема, а не тема для адміна. Ми додали запис в куки з логіном менеджера і роботи теми під адміном тепер пов'язана з цією кукой і не злітає при вищеописаних діях.

Виправили те, що в методі ProductsHelper :: attachFeatures () діставалися взагалі все властивості

Це створювало проблеми для розробників, коли потрібно було в адмін панелі зробити сортування по якомусь конкретному властивості. Тепер це працює нормально

Виправили роботу масового виключення способів оплати.

Раніше, якщо галочками відзначити всі способи оплати і спробувати їх вимкнути - це не спрацьовувало. Тепер працює коректно.

Виправили відображення в ситуації коли на сайті телефон не вказано, а емейл вказано. Тепер емейл в шапці відображається відразу, а не при наведенні

Приклад як було раніше https://monosnap.com/direct/oMCVYJoLItGf8PodtywVuqEOGxUbWi

Виправлені різні, не зовсім коректні назви полів в адмін. панелі. Наприклад в замовленні поле з Ім'ям клієнта називалося "Назва".

Виправили можливо редагування HTML шаблонів листів з адмін панелі, з розділу Дизайн - Файли шаблону. Раніше редагування листів з адмін. панелі було заборонено

Виправили баг, при якому, якщо не клікнути по способі оплати, а залишитися на першому запропонованому - після оформлення замовлення потрібно було підтвердити спосіб оплати ще раз.

Проблема була в тому що ми для себе робили відмітку про обраному способі оплати тільки після кліка. І коли у людини був ось такий вибір, а його устранівал перший варіант і він ніде не кликав, а відразу оформляв замовлення, то у нас не відображалося, який спосіб оплати він вибрав і клієнтові потрібно було перевибрать. Зараз це працює нормально.

Виправлений баг кнопки додавання в друзі. У минулій версії якщо додати товар в обране, перезавантажити товар і натиснути на сердечко щоб видалити його з обраних, товар віддалявся, але сердечко залишалося зафарбовані (ніби товар все ще в обраних).

Після зміни варіанту товару в замовленням - не підтягувалися одиниці виміру товару. Відображалося так як на скрині нижче. Виправили це.

Виправили баг з поверненням на склад товару у разі вилучення замовлення.

Коли товар перенесений в прийняті, то товар списується зі складу. Коли видаляється замовлення з прийнятих, то такий товар за логікою мав повернутися назад на склад, але таке не відбувалося.

Виправили баг з роботою списку "Каталог товарів" на планшеті. При кліці по цій кнопці - нічого не відбувалося. Тепер працює.

Виправили взаємовиключення фільтра по новинкам і рекомендованим.

Раніше, якщо вже в категорії отфильтровал з якоїсь характеристиці, то фільтр по новинках або рекомендованим не спрацьовував.

Виправили баг, коли на сторінці оформленого замовлення некоректно відображаються загальна вартість товару.

Туди не додавалася вартість доставки, якщо це була доставка через Нову Пошту. При цьому на сторінці оформлення замовлення все показувалося коректно, баг був помітний лише на сторінці вже оформленого замовлення.

Виправили роботу Настрофкі ЧПУ для товарів при певних умовах

Проблема була в тому що якщо виставити певну комбінацію побудови посилань для товарів, то при переході в товар видавалася помилка 404

В адмін. панелі, на сторінці зі списком властивостей при натисканні на кнопку "Показати всі" відображалися властивості тільки з першої сторінки пагінацію. Поправили це.

Провели рефакторинг коду на предмет потенційний вразливостей для XSS атак і виправили їх.

Виправили помилку в мікророзмітки рейтингу в товарі

Виправили помилку в відображенні інших замовлень клієнта в замовленні, у вкладці "Інші замовлення". У минулій версії некоректно працювала пагінація, якщо замовлень було багато

Зробили коректний порядок виведення властивостей в клієнтської частини. У минулій версії порядок властивостей в адмін. панелі і порядок властивостей в клієнтської частини іноді міг відрізнятися.

При створенні товару, до того як вибиралася категорія, в нього за замовчуванням підтягувалися властивості з першої категорії магазину. Це іноді збивало клієнтів. Зараз при створенні товару властивості відображаються тільки тоді, коли обрана категорія.

Завантажити нову версію можна по посиланню архів зі змінами в порівнянні з 3.5.2 по посиланню Також ви можете написати через розділ "Техпідтримка" для замовлення оновлення.

Коментарі 2
Евгений Владимирович
22.05.2020, 00:38
Когда вы научитесь обновляться так чтобы ничего другое, что было уже сделано непосильным трудом не ломалось? Сколько можно восстанавливать все с нуля после ваших обновлений?
Администратор
22.05.2020, 09:55
Евгений Владимирович , а что у вас сломалось?
Андрей Л.
14.05.2020, 21:39
Проделали очень много работы) Молодцы)
Написати коментар
увійдіть в особистий кабінет
Завантажити OkayCMS
version 4.5.0
Підписатися на розсилку
Ви будете отримувати добірку корисних статей по роботі з сайтом на OkayCMS, знижки на модулі і шаблони