Вышла новая версия OkayCMS 3.1.0

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

OkayCMS M
Администратор
Аватара
OkayCMS M
Администратор
Репутация: 138
Сообщения: 1068
Зарегистрирован: 12.11.2015
С нами: 4 года
Сайт Skype

Сообщение #1 OkayCMS » 17.10.2019, 18:44

Вышла OkayCMS 3.1.0

Изменений было довольно много, в основном технического характера. Но на данный момент мы сделали 80% от того, что мы хотели от модульности. В ближайшую неделю мы сделаем объемную, но не слишком сложную работу по модульности и параллельно готовим документацию, чтобы разработчикам сайта было понятно, как теперь стоит делать модули для новой версии.

А пока я поверхностно, простым языком постараюсь объяснить что было сделано.

Сделана модульность способов доставки

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

Изображение

Сделана, так называемая нами, "модульность шорткодов".

Это возможность выводить определенный функционал в дизайне сайта с помощью вставки шорткода в определенном месте. Для примеров реализации этого мы сделали модуль "Быстрый заказ" (заказ в 1 клик), а также переделали баннеры. Теперь баннеры, это отдельный модуль с большим функционалом, чем ранее. Об этом стоит рассказать отдельно.

Модуль "Баннеры"

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

Во-вторых, теперь баннеры вставляются в дизайн одним коротким шорткодом, а не большим куском кода.

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

В-четвертых, сделаны варианты отображения текста на баннере.
Изображение

Модульность блоков в админ. панели.

Была сделана возможность добавлять блоки модуля в разные места в админ панели. Для этого, были размечены страницы в админ. панели и в нужное место в админ. панели можно вызвать отображение определенного модуля. Если в config/cofig.php включить режим разработчика (dev_mode = true), то такие места будут подсвечены красным. На данный момент такие места созданы только в товаре и на странице заказа, но в ближайших версиях мы покроем таким функционалом всю систему. Как пример, теперь в списке товаров добавилась функциональная кнопка "Выгрузить в XML"

Модульность конфигов

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

Индексирование таблиц модулей

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

Реализован функционал хуков посредством классов типа Extender

Extender это класс посредством которого можно расширить функциональность системы, а именно реализацию определенных методов в указанных классах. Работает это следующим образом. Вы выбираете метод класса, который хотите расширить. Затем проверяете, есть ли в конце реализации данного метода вызов Extender-а (например: ExtenderFacade::execute(s_METHOD__, $returnData, func_get_args()). Допустим это метод получения объекта корзины Okay\Core\Cart::get(). После этого вы создаете класс внутри вашего модуля который будет модифицировать результат работы Okay\Core\Cart::get(). Назовем этот метод Okay\Modules\Vendor\ModuleName\CartExtension::initCustomDiscount($returnCart). В качестве первого аргумента созданный метод принимает результат работы Okay\Core\Cart::get(), после чего модифицирует его нужным вам способом и на выход отправляет измененный объект. В нашем случае это будет начисленная скидка. После чего мы регистрируем данный метод в Init/Init.php вашего модуля в методе init() и теперь после работы метода Okay\Core\Cart::get() отработает зарегистрированный нами метод. Данных методов может быть больше одного и отрабатывать они будут в приоритетах модулей в списке админ панели.

Расширение меню администратора из модулей

У модуля появилась возможность создавать собственные пункты меню в админ панели слева. Пример реализации вы можете увидеть в модулях OkayCMS\FAQ и OkayCMS\Banners. Если у корневого пункта не задано изображение, то на его место подставляется первая буква названия модуля.

Расширение настроек работы с товарами не в наличии

Добавлен в раздел Настройки - Настройки каталога следующий селект:
Отсутствующие товары : Отображаем стандартно / Перемещаем в конец списка / Скрываем в каталоге
Если выбран первый вариант - ничего не делаем.
Если выбран второй вариант - в клиентской части в каталоге сначала отображаем товары, которые есть в наличии (количество больше 0), а затем товары не в наличии.
Если выбран третий вариант - скрываем такие товары из списка в каталоге, но оставляем доступными по прямой ссылки.
Отсутствующие товары - это те товары у которых у всех вариантов количество 0 или отрицательное. Если хотя-бы у одного варианта товара задано количество больше нуля, это значит что такой товар есть в наличии.
Перемещены в конец списка товары будут только в клиентской части. В админ. панели сортировка будет такая-же, как была.
Товары, скрытые для отображения в каталоге будут доступны для клиентов и поисковых систем при переходе по прямой ссылке.
Изображение

Добавили раздел "Обучение"

Добавили раздел обучение, где собраны инструкции для базовых работ на сайте. Данный раздел будет полезен для тех, кто впервые работает с OkayCMS и позволит снять нагрузку с веб-мастеров по обучению пользователей работе с системой. Информация в разделе будет обновляться и добавляться со временем.

Прочие вещи, которые были сделаны в новой версии

Улучшили показатели по PageSpeed, особенно для десктоп версии. Но это не предел, будет ещё работать над этим.
Заменили шрифтовые иконки materialdesignicons на более легковесные
Добавили отображение просмотренных товаров
Исправили неправильную ссылку на страницу покупателя из заказа (проблема описанная здесь )
Исправили ситуацию, когда указанный телефон не отображался в настройках дизайна, но показывался на сайте
Исправили ситуацию, когда между ссылками на соц. сети добавлялась пустая строка что вело к некорректному отображению ссылок на сайте
Исправили длину поля IP в БД чтобы не было проблем с ‎IPv6 адресами
Исправили проблему с очисткой каталога, описанную здесь
Переделали загрузку изображений товара, убрали старый код.
Исправили работу рейтинга
Исправили работу модуля оплаты ЯндексКасса, подверстали кнопку перехода к оплате
Исправили работу модуля оплаты PayKeeper
Сделали корректную отправку статусов заказа на почту
Переделали ajax в корзине, чтобы менялся не весь HTML, а только необходимые нам элементы
Исправили несколько переводов к шаблонам
Исправили проверку PHP версии в установщике
Исправили работа выключения сайта через админ. панель
Исправили пару замечаний по работе TinyMCE с изображениями и видео

makki
makki
Репутация: 163
Сообщения: 480
Зарегистрирован: 12.08.2016
С нами: 3 года 3 месяца
Откуда: Киев
Сайт Skype

Сообщение #2 makki » 18.10.2019, 04:19

Спасибо за обновление.

По модулю Новая почта, стоит галочка наложенный платеж и в тоже время доступны другие методы оплаты. Что-то с этим надо делать. Как вариант вынести Наложенный платеж в настройки, тогда можно будет создавать отдельно два метода доставки НП предоплата и НП налож.платеж и подвязывать соответствующие методы оплаты. Но и это не совершенство. Похоже лучше сначала выбирать методы оплаты и к ним подвязывать методы доставки. Или какие еще есть варианты?
Cоздание и расширение функционала интернет-магазина на платформе OkayCMS

FreemanH M
FreemanH M
Репутация: 1
Сообщения: 15
Зарегистрирован: 12.04.2018
С нами: 1 год 7 месяцев

Сообщение #3 FreemanH » 18.10.2019, 08:15

Добрый день. Подскажите пожалуйста, а есть ли ссылка на обновление с 3.0.4 на 3.1.0? Не полная инсталляция, а только обновление.
Ответ получил. Спасибо.
Последний раз редактировалось FreemanH 18.10.2019, 11:50, всего редактировалось 1 раз.

evgkiev
evgkiev

Смена языка не работает

Сообщение #4 evgkiev » 18.10.2019, 10:51

Переключатель языка не работает на demookay.com тоже не работает

OkayCMS M
Администратор
Аватара
OkayCMS M
Администратор
Репутация: 138
Сообщения: 1068
Зарегистрирован: 12.11.2015
С нами: 4 года
Сайт Skype

Сообщение #5 OkayCMS » 19.10.2019, 07:29

makki писал(а):Спасибо за обновление.

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

FreemanH писал(а):Добрый день. Подскажите пожалуйста, а есть ли ссылка на обновление с 3.0.4 на 3.1.0? Не полная инсталляция, а только обновление.
Ответ получил. Спасибо.
Да, все файлы находятся вот здесь https://okay-cms.com/diff/

evgkiev писал(а):Переключатель языка не работает на demookay.com тоже не работает
:( А вот слона на тестах мы и не заметили. В ближайшей версии поправим.

evgkiev
evgkiev

Сообщение #6 evgkiev » 19.10.2019, 07:38

Поправьте пожалуйста модуль "Быстрый заказ". Когда оформляешь заказ пишешь Имя и Номер телефона, то Имя нигде не отображается, а в поле вместо имени отображается номер телефона

Добавлено спустя 3 часа 20 минут:
Захожу на https://demookay.com/backend/index.php?controller=ModulesAdmin
Перемещаю OkayCMS/FastOrder например на вторую строку или любую другую и нажимаю кнопку Применить
Перехожу, например на https://demookay.com/catalog/mebel-dlya-doma обновляю страницу и https://prnt.sc/plfx0a нет кнопки "Быстрый заказ"
Возвращаюсь в Список модулей, перемещаю OkayCMS/FastOrder на верхнюю строку, сохраняю и всё на месте https://prnt.sc/plfxoc

Просто интересно, с чем это связано?)

Добавлено спустя 1 час 43 минуты:
Ещё один момент в https://demookay.com/backend/index.php?controller=CategoriesAdmin
Категории как и должны быть https://prnt.sc/plgrg2 в порядке отсортированы по полю position как и нужно, но достаточно просто пару раз нажать на кнопку "Применить" https://prnt.sc/plgs3s категории меняются местами, первая становится последней, последняя первой и так дальше все категории меняются местами и поле position соответственно тоже меняет свой id. Может я что-то пропустил, возможно так и должно быть? Но немного не удобно когда создаёшь новую категорию и нужно несколько раз применять чтобы она стала на то место где она должна быть.

И пожалуйста исправьте Полноэкранный режим https://prnt.sc/plgue3 не очень удобно редактировать описание товара когда его не видишь полностью https://prnt.sc/plgv8o

seo-deluxe.ru
seo-deluxe.ru
Репутация: 1
Сообщения: 22
Зарегистрирован: 20.04.2019
С нами: 6 месяцев 23 дня

Сообщение #7 seo-deluxe.ru » 22.10.2019, 06:11

FreemanH писал(а):ений было довольно много, в основном технического характера. Но на данный момент мы сделали 80% от того, что мы хотели от модульности. В ближайшую неделю мы сделаем объемную, но не слишком сложную работу по модульности и параллельно готовим до
Мне бы так же не помешала эта информация.

Еще такой момент, у меня почему то не отображаются рекомендованные товары сайт https://fogel-shop.ru/products/fogelterm-drugoe---500x500x32
Тут поставил 2 рекомендованных товара, но они не отображаются, подскажите что не так? Шаблон вообще не переписывал и не трогал.


Название раздела: Обновления OkayCMS
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Обновления OkayCMS»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 1 гость