Регламент работы. Служба поддержки umi cms


Переход с OpenSource CMS на коробочную UMI.CMS глазами разработчика

Холивар

Безусловно, каждый разработчик будет хвалить именно ту систему управления, тот язык программирования и ту операционную систему, к которой он привык. Я нисколько не претендую на то, чтобы мое мнение считалось единственным верным. У каждого есть своя точка зрения, но я хотел бы рассказать, почему в итоге я выбрал UMI.CMS в качестве основной системы для разработки сайтов.

Длительный путь

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

Отсюда мне пришлось поковыряться в совершенно разном коде разных CMS, начиная от OpenSource-решений, типа Joomla, Wordpress, и самописных движках. Безусловно, также в разработке мне пришлось столкнуться с UMI.CMS и 1С-Битрикс.

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

И что бесплатно?!...

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

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

Первое знакомство

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

Признаюсь честно, было потрачено достаточно времени, чтобы понять для себя, как писать код под UMI. Однако, я считаю, это время не было потрачено зря. Я остался доволен тем, как подошли к делу разработчики ЮМИ, и мне нравится то, что у них получилось.

Сейчас мы практически полностью отказались от использования OpenSource для разработки Интернет-проектов. И смещаем акцент с 1С-Битрикс в сторону UMI.

А теперь больше конкретики, почему именно UMI.CMS. Я хочу затронуть весь спектр преимуществ с точки зрения разработчика и с точки зрения заказчика.

Архитектура данных

При работе с API UMI.CMS мы абстрагируемся от понятия базы данных, ее структуры, нативных sql-запросов, хотя реально это все используется, но скрыто в глубинах API. Разработчик, в терминах UMI, работает с объектами. Вся модель построена на взаимодействии объектов. Для получения объектов из внешнего хранилища используется понятие фильтра-селектора, который строится добавлением вызовов методов фильтрации. Объекты могут быть связаны между собой иерархически.

Чтобы получить список красных машин, мы просто указываем селектору тип объектов — машины, а также его характеристику — красный цвет и все. Селектор внутри своей реализации в стороне от разработчика строит sql-запрос, исходя из своей модели, и не требует от него знаний в архитектуре хранения данных и обращения к ним.

Реальная сериализация всех UMI-объектов происходит в одних и тех же таблицах. Рефлексия, или отражение, атрибутов объектов и его типа происходит по служебным полям таблиц, соединяя все представление объекта по ключам строк таблиц.

Объектно-ориентированная архитектура базы данных позволяет решать задачи проще и быстрее и обеспечивает высокую преемственность проектов между разработчиками.

Достоинства модели объектов UMI.CMS

С одной стороны, такая физическая организация данных через единое разложение данных очень гибкая и удобная, так как позволяет динамически добавлять объекты без расширения физической структуры и добавления таблиц (не плодятся таблицы), все данные имеют единое представление, что позволяет применять и реализовывать одни и те же единые алгоритмы и процедуры обработки данных.

Большинство известных мне систем управления имеют упрощенную модель хранения данных, которая подразумевает отображение каждого типа объектов на свою таблицу в БД. Такое построение позволяет составлять более эффективные с точки зрения производительности и сложности нативные sql-запросы, но менее гибко и более трудоемко для разработчика для реализации, требуя от него знаний по созданию таблиц, их организации, оптимизации. Также для каждого объекта нужно писать свои алгоритмы и операции по сериализации и десериализации, что требует дополнительных усилий и времени для тестирования и отладки.

Возникает вопрос, почему же для меня не имеют значение эти столь серьезные недостатки в организации данных в хранилище. Отвечу так: для корпоративных сайтов, интернет-магазинов, информационных порталов и социальных сетей, угрозы производительности не будет. Большинство проектов имеют не гигантский масштаб по нагрузкам и объему данных, а поэтому вариант с UMI.CMS позволит решать при достаточном уровне производительности подобные задачи. А для разработки крупных систем под высокими нагрузками я вообще бы не стал использовать PHP и MySQL, в такой ситуации я бы выбрал связку Java + Oracle. Но зато для разработки сайтов это удобная модель, так как позволяет значительно упростить работу. Наверняка некоторым программистам такое представление данных покажется неудобным, однако сразу скажут, что это предельно просто и удобно. За счет этого даже пользователь имеет возможность создать любой объект прямо через админку. Для этого ему не придется лезть в БД и создавать там новую таблицу, и разбираться, как и что там делать.

В процессе разработки

Существует достаточно полная документация по API, на сегодняшний момент есть определенные недостатки примеров, но такая ситуация есть у всех. Могу в защиту сказать, что ребята из «Юмисофт» постоянно работают над улучшением документации, также развивают свои источники информации: блог, вики и вики-дев. Также наличие «Службы Заботы» позволяет разрешать затыки и сложности в процессе разработки.

Видно, что UMI заинтересованы в своих партнёрах и клиентах, всегда идут им на встречу и помогают всеми возможными путями. Могу сказать, что это здорово, так как, возвращаясь например к Joomla, спрашивать не с кого, необходимо самостоятельно разбираться с возникшими трудностями, а вся серьезная документация, в частности по API, на английском языке, причем она очень часто меняется, что крайне неудобно.

Поддержка и гарантии производителя: постоянное развитие источников информации, поддержка Службой Заботы, устранение багов.

Кодинг

Вряд ли разработчик сможет сходу уверенно писать код под UMI, если начнет с ней работать впервые. Но по себе скажу, что чем глубже погружаешься, тем больше начинает нравиться процесс разработки на основе их API. Отмечу, что UMI думает о разработчиках и всячески пытается упростить процесс разработки, например, в версии 2.8 появился класс Selector, который позволяет предельно просто генерить выборки различной сложности.

Интеграция дизайна

UMI.CMS, в отличие от например той же Joomla, позволяет максимально просто внедрять дизайн, а также использовать на выбор два шаблонизатора tpl и xslt. В случае xslt вообще можно избежать написания кастомных макросов для сайта за счет того, что любой объект системы можно представить в виде xml.

Наиболее важная часть для клиента — это удобство управления своим сайтом.

Глазами клиента

Если провести аналогию, например, с Joomla и 1С-Битрикс, можно с уверенностью сказать, что UMI.CMS фаворит в плане управления сайтом. Видно, что UMI думает о юзабилити, так как все интуитивно удобно. Cейчас у меня есть отзывы клиентов, которые ушли от Joomla и перешли на UMI и довольны удобством ее интерфейса. OpenSource-решения, на мой взгляд, разрабатываются скорей для самих разработчиков и веб-мастеров, чем для потенциальных пользователей.

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

«

В итоге всего выше сказанного, лично я для себя сделал выбор. На основе применения UMI.CMS можно строить и развивать надежный бизнес с уверенностью в качестве и высокой скорости разработки. Я надеюсь, что Вы тоже сделаете для себя определенные выводы после прочтения этого материала

»

Роман Синцов,

руководитель проектного отдела студии MainSource

www.umi-cms.ru

История версий платформы для создания сайтов UMI.CMS (changelog)

Номер задачи Описание
cms2-2382 Добавлена поддержка php версии 7.2.10.
bc-349 Добавлена вкладка "Решения" в модуль "Конфигурация", в ней отображаются установленные решения, и есть возможность установить или удалить решение для каждого домена.
cms2-2391 Добавлена возможность редактирования title изображения для полей типа "Набор изображений".
cms2-2393 Добавлена возможность редактирования alt и title изображения для поля типа "Изображение".
cms2-2351 Обновлен файловый менеджер Elfinder, исправлены проблемы безопасности, улучшен интерфейс и добавлена возможность редактирования изображений.
bc-487 Обновлена интеграция с почтой РФ.
bc-1508 Обновлена внутренняя документация (справки) всех модулей системы.
bc-1550 Добавлена вкладка "phpinfo" в модуль "Конфигурация".
cms2-2284 Добавлена возможность принудительно обновить курс валют в модуле "Интернет-магазин" на вкладке "Валюты".
bc-690 Добавлена настройка "Переносить заказы незарегистрированного покупателя к заказам админа" в модуль "Интернет-магазин".
bc-1609 Добавлена настройка "Обновлять цены товаров в корзине" в модуль "Интернет-магазин".
bc-504 Добавлена поддержка мультисайтовости для настроек водяного знака в модуле "Конфигурация".
umicmsru-614 Добавлена новая редакция "UMI.CMS Интернет-магазин 1С:Франчайзи".
bc-1538 Добавлена возможность указывать идентификатор пустым для импорта новых объектов с помощью csv формата.
bc-1536 Добавлен экспорт и импорт csv списков в табличных контролах.
bc-1535 Добавлен полный csv экспорт без ограничений и пагинации в табличных контролах.
bc-1500 Добавлена возможность вывода приложения для социальной сети по дефолтному шаблону.
cms2-2379 Добавлена возможность переопределять в customMacros.php методы из handlers.php.
bc-1439 Добавлена возможность переноса страниц каталога в конец списка в окне выбора категории.
cms2-2424 Добавлена возможность передавать параметры языковой константы через метод php-шаблонизатора translate().
cms2-2253
Добавлен вывод группы полей "1С: Специфические свойства" на странице товара в шаблоне Demomarket.
cms2-2269 Добавлена возможность в классе xmlImporter принудительно указать домен, к которому нужно привязать все зависимые импортируемые сущности.
bc-1214 Добавлен fancybox для дополнительных изображений на странице товара шаблона Demomarket.
bc-1465 Добавлена загрузка кастомного config.ini решения при запросе протоколов системы (если передан template_id).
bc-1549 Добавлен вывод фильтра на мобильной версии шаблона Demomarket.
cms2-2442 Добавлен вывод alt и title изображений в шаблоне Demomarket.
bc-1452 Добавлена возможность шифрования значения кук.
bc-1376 Добавлен переход в отдельное окно при нажатии на "Редактировать элементы справочника" в административной панели.
bc-1447 Добавлено автозаполнение типа шаблона при создании шаблона с файлом расширения phtml.
cms2-2271 Добавлен класс репозитория установленных готовых решений.
bc-1584 Добавлена возможность указать id справочника для полей типа "relation" и "optioned" в узле field для формата UMIDump.
bc-1449 Добавлен учет текущего домена и языка в макрос umiSliders getSlideListBySliderCustomId().
cms2-2296 Добавлена возможность принудительно указать используемый процессор изображений (gd|imagick) в config.ini [kernel] image-processor.
cms2-2378 Добавлен метод isAjax класс Request.
cms2-2423 Добавлен режим "after" для события systemKillElement.
bs-4952 Добавлена проверка доступности памяти для генерации миниатюр, если памяти недостаточно - будет показана заглушка из config.ini [includes] too-big-image-holder.
bc-1657 Добавлено удаление устаревших индексов при обновлении системы.
bc-1654 Добавлена возможность удалить основной шаблон дизайна.
cms2-2439 Снято ограничение на количество устанавливаемых бесплатных готовых решений Юмисофт на одну лицензию.
cms2-2371 Внедрена безопасная проверка хэшей.
cms2-2422 Инициализация модулей в конструкторе разбита на публичные методы initTabs(), includeAdminClasses() и includeCommonClasses().
cms2-2416 Зафиксировано отображение модулей в левом меню административной панели.
bc-1600 Изменена видимость private методов и свойств класса FilterQueriesMaker на protected.
bc-1452 Хранение идентификатора незарегистрированного покупателя перенесено из сессии в куки.
cms2-2266 Строковые и числовые поля для хранения идентификаторов доменов с системных типах данных переведены на тип поля "Ссылка на домен".
cms2-2392 Значения полей типа "Изображение" перенесены в хранилище полей типа "Набор изображений" (cms3_object_content => cms3_object_images).
cms2-2285 Оптимизирована работа макроса system makeThumbnailFull() с уже существующими миниатюрами.
cms2-2376 Оптимизированы sql-запросы для вставки значений множественных полей.
bc-1510 Исправлено отображение слайдера на мобильных устройства в шаблоне Demomarket.
bc-399 Исправлена поддержка нижнего подчеркивания в именах доменов.
cms2-2280 Исправлен вывод цены доставки в шаблоне Demomarket.
bc-1446 Исправлен вид контрола активности страницы в модуле "Структура".
bc-599 Исправлено экранирование двойных кавычек в полях meta информации в панели быстрого редактирования.
bc-1463 Исправлен учет активности способов доставки при определении доступности способов доставки типа "Самовывоз".
bc-1445 Исправлены пути до шрифтов в контроле поля типа "Ссылка на дерево".
bc-1395 Исправлен учет активности при формировании верхнего меню шаблона Demomarket.
bc-1515 Исправлена ширина баннера на главной странице шаблона Demomarket.
bc-1426 Исправлено отображение редактируемого поля "Цена" в шаблоне Demomarket.
bc-1460 Исправлена работа TinyMCE при выделении справа налево.
cms2-2212 Исправлено отображение итоговой суммы (ранее отображалась без скидки) в корзине шаблона Demomarket.
bc-1468 Исправлено отображение выбора групп в форме редактирования пользователя административной панели.
bc-1548 Исправлен интерфейс редактирования домена при включенной старой реализации модулей.
bc-1476 Исправлено отображаемое имя модуля в модуле "Корзина".
bc-235 Исправлено изменение шаблона при перетаскивании страницы с домена на домен в модуле "Структура".
bc-1381 Исправлено отображение кнопок быстрого редактирования (удалить и добавить) в шаблоне Demomarket.
bc-1454 Исправлено отображение длинных значений фильтров в каталоге шаблона Demomarket.
bc-1418 Исправлено оформление заказа в один шаг с выбором самовывоза шаблона Demodizzy.
cms2-2302 Исправлены php уведомления на вкладке "Яндекс.Метрика" модуля "Статистика".
bc-1553 Исправлено отображение чекбоксов на странице редактирования слайда в административной панели.
bc-1473 Исправлена html-валидация float значений поле типа "Составное" на страницах редактирования страниц или объектов в административной панели.
bc-1514 Исправлено обновление пунктов меню модуля "Меню" при изменении активности страниц в модуле "Структура".
bc-1541 Исправлены php-уведомления на вкладке "Анализ ссылок" модуля "SEO".
bc-1561 Исправлено сохранение полей и групп полей при включенной старой реализации модулей.
bc-1559 Исправлено определение запроса по протоколу https на некоторых серверах.
bc-1470 Исправлен интерфейс редактирования поля типа "Дата", если поле является обязательным.
bc-1409 Исправлено различие шрифтов в диалоговых окнах модулей.
bc-1554 Исправлен выбор привязанного к домену типа данных при создании страницы.
bc-1431 Исправлена неправильная работа выборки select при использовании isnull на разных полях с одним строковым идентификатором.
bc-1523 Исправлено округление курса валюты при автоматическом обновлении курсов через cron.
cms2-2261 Исправлено различие высоты полей в формах редактирования объектов или страниц административной панели.
bc-1579 Исправлена работа поиска в модуле "Шаблоны данных".
bc-1586 Исправлена ссылка в сообщении об использовании старой реализации модулей.
bc-1587 Исправлен учет выбранного домена в табличных контролах, если домен был удален.
bc-1588 Исправлено открытие меню для добавления поля при повторном клике в табличном контроле.
bc-1564 Исправлен используемый шаблон системных страниц для шаблонов Demodizzy и Demoold.
bc-1591 Исправлено формирование ссылки на источник битой ссылки в модуле "SEO".
bc-1575 Исправлена работа макросов по протоколу udata, если аргументы вызова содержат скобки.
bc-1500 Исправлена работа страницы приложения модуля "Социальные сети" в шаблоне Demomarket.
bc-1500 Исправлено сохранение имени директории шаблона при его создании.
bc-1590 Исправлена проблема с переименованием изображений при импорте из 1С.
bc-1599 Исправлена ошибка при создании страниц на мультисайтовости в табличном контроле.
cms2-2338 Исправлена работа браузерного кеширования на php 7.2.6.
cms2-2338 Исправлено php уведомление на странице настроек модуля "Интернет-магазин".
bc-1437 Исправлена проблема с языковыми константами модуля "Интернет-магазин" при включенной старой реализации модулей.
bc-1596 Исправлено отображение нулевых значений числовой части полей типа "Составное" в административной панели.
cms2-2359 Исправлена опечатка в имени метода Order::erase().
bc-1533 Исправлено сохранение кеша в бд со значением времени жизни большим текущей временной метки.
bc-1581 Исправлена проверка целостности при работе редакции Ultimate.
bc-1603 Исправлено отображение имени статуса оплаты в письме менеджеру о новом заказе.
bc-1537 Исправлена фильтрация по отсутствию изображений в табличных контролах с уровнями вложенности.
bc-1607 Исправлено экранирование имени группы полей при формировании json для контрола редактирования типа данных.
bc-1439 Исправлено расположение страницы в иерархии после переноса в другую категорию.
bc-1469 Исправлена установка шаблона Demomarket в localpack.
bc-1619 Исправлено отображение кнопки переключения слайдов на широких экранах в шаблоне Demomarket.
cms2-2372 Исправлена индикация срока работы триальной редакции в административной панели.
cms2-2375 Исправлено отображение ошибки системы при отсутствии подключения к базе данных.
bc-1571 Исправлен вывод extProps в макросе catalog getCategoryList().
bc-1412 Исправлено добавление нового элемента справочника для не супервайзеров через формы редактирования страниц и объектов.
bc-1618 Исправлено php-уведомление в поисковой выдаче, если в ней присутствуют страницы с индексируемыми полями некоторых типов.
bc-1615 Исправлен выбор объектного типа создаваемой страницы, если для выбора доступно несколько объектных типов для нескольких иерархических типов во всплывающем окне e-i-p.
bc-1516 Исправлено сохранение атрибутов у тега "p" в TinyMCE.
bc-984 Исправлено увеличение размера png-файла при включенной директиве jpg-through-gd.
cms2-2405 Исправлено некорректное формирование sql-запроса в умных фильтрах при определенных условиях.
bc-1629 Исправлено скачивание файлов в файловом менеджере elFinder.
bc-290 Исправлена работа клавиатурных шорткатов в файловом менеджере elFinder.
cms2-2434 Исправлено сохранение абсолютных путей в качестве значений для полей типа "Набор изображений", "Изображение" и "Файл".
cms2-2456 Исправлено сохранение абсолютных путей до изображений в модулях "Cлайдеры" и "Онлайн-запись".
cms2-2448 Исправлено удаление домена, который указан у объектного типа данных.
cms2-2280 Удалена валидация не float значений для характеристик доставки, заказа и товарного наименования.
bc-1482 Удален автоматический запрос файла smu/installer.php на некоторых вкладках модуля "Конфигурация".
bc-1608 Удалена проверка системных требований при активации системы.
bc-1391 Удалено редактирование изображений внутри TinyMCE.
cms2-2338 Удалена поддержка сервиса определения геолокации "CDNService".

www.umi-cms.ru

Регламент работы службы заботы и техподдержки UMI.CMS

Время работы и сроки ответа Службы Заботы о клиентах

Техническая поддержка оказывается пользователям UMI.CMS с актуальным статусом обновлений по будним дням с 09:00 до 20:00 по московскому времени. В расчет времени реакции выходные и праздничные дни не включаются.

Поддержка пользователей коммерческих версий UMI.CMS доступна в течение года после приобретения лицензии. Поддержка оказывается по электронной почте (через специальную форму) либо через административную панель сайта, пункт верхнего меню «Запрос в Службу Заботы» (доступно в версии системы 2.8.5.1 и выше). Максимальное время реакции на обращение составляет 14 рабочих часов (5 — для пользователей с активной «VIP.Заботой»). Поддержка по телефону оказывается владельцам VIP-заботы.

По каким вопросам мы оказываем поддержку пользователей UMI.CMS?

С момента релиза UMI.CMS 14 поддержка по вопросам внедрения новых функций и исправления ошибок системы оказывается только пользователям, использующим новый дизайн административной панели (скин «Modern») и новый набор реализаций модулей, поддерживающих PHP 7. Подробнее про миграцию на PHP 7.

По каким вопросам мы не оказываем поддержку?

zybang.loan


Prostoy-Site | Все права защищены © 2018 | Карта сайта