Joomla 3.6: Дополнения, исправления и впечатляющие улучшения
Крайне впечатляет продуктивность команды Joomla: всего 4 месяца между выходом релизов Joomla! 3.5 и Joomla! 3.6. Мы можем видеть более чем 400 исправлений и улучшений. Версия 3.6 это седьмая итерация по линейки Joomla! 3, в рамках которой возможно так называемое обновление “в один клик”, данное улучшение теперь входит в штатную функцию платформы, что делает процесс апдейта довольно быстрым и не вызывает трудностей.
Читающий данную статью, как и многие другие, немного в недоумении от количества обновлений… Разрыв между версиями Joomla! 3.4 и Joomla! 3.5 почти год, а в версии 3.6 получаем довольно серьезное обновление спустя всего несколько месяцев, что безусловно является довольно беспрецедентным шагом в современном цикле развития платформы. Если изучать глубже, то не далее как в начале июня 2016 только начиналось обсуждение раннего релиза Joomla! 3.6, специально для выпуска компонента Update, который позволяет выполнить быструю переустановку ядра, без ущерба для остальной части сайта, что дает возможность быстро восстановиться после аварий или хакерских атак. Многие гадали, будет ли эта функция уже в версии 3.6 или она переедет в 3.7, но нам повезло!
Команда разработчиков сменила тактику выпуская версию с набором функций, которые по отдельности не могут предстать чем-то удивительным, но сгруппированные в рамках единого интерфейса дают значительные преимущества как для рядовых пользователей, так и для разработчиков. Нельзя не упомянуть о улучшениях, которые будут полезны маркетологам и ответственным за монетизацию проекта на базе Joomla!, а так же юзабилити часть, которая так же не осталась незамеченной, мы обязательно детально обсудим это чуть позже.
До этого предлагаем еще раз, более внимательно, вглядеться в цифры. Уже многие из нас оценили неприлично большое число исправлений, включенных в версию 3.6. Вдумайтесь, 400+ исправлений и улучшений! Команда Joomla! по всей видимости создала новую CMS? Мы побывали в Joomla! GitHub-репозитории в поисках ответа на наш вопрос и обнаружили, что для данного релиза было закрыто более 700 проблем. Конечно, мы уточним, что 700 решенных проблем функционала и "700 невероятно новых возможностей" это совершенно разные вещи, но, можем склонить голову перед разработчиками и открыто заявить, что подобное количество отработанных вопросов за такой короткий интервал - это еще более невероятный подвиг. Кто там говорил, что проект Joomla! загибается? Он живее всех живых и слухи о смерти CMS сильно преувеличены! Если кто-то обладает достаточным количеством времени, рекомендуем ознакомится с полным листингом issues на официальном репозитории.
Новое для администратора
Начнем обзор глазами рядового администратора CMS, взгляд которого может значительно отличаться от взгляда программиста. Несомненно, в данном релизе сделана ставка на удобство использования, поэтому не следует ожидать кардинальных новшеств и значительных изменений интерфейса, которые, как ожидается, запланированы в версии Joomla! 3.7. Тем не менее, именно в данном релизе добавлен функционал, который призван значительно упростить управление CMS.
Joomla! обновляем?… обновились!
Сообщество Joomla! требовало от разработчиков ускориться в выпуске данного релиза, если быть точным, многих интересовала именно функция быстрого обновления. Ожидалось, что в версии 3.6 будет реализован только функционал обновлений, но команда Joomla! несколько пересмотрела свои планы.
Мы видим два изменения. Во-первых, по просьбе сообщества, вернулась возможность обновления путем загрузки файла-обновления локально, а не автоматически через главную страницу панели администрирования. Многие сочтут это архаизмом, но гибкость управления всегда имело значение для разработчиков Joomla! и многие пользователи так же считают полезным всегда иметь возможность альтернативного способа обновления.
Во-вторых, внимание, это основная фишка, опция, которая будет переустанавливать ядро Joomla! в “один клик”, возвращая его в исходное состояние после возможных повреждений. Это своеобразный hard reset (жесткий сброс), который мы привыкли делать мобильным устройствами, когда они начинают плохо работать и мы хотим вернуть им первоначальное состояние.
Пункты меню
Это одно из наиболее простых изменений, которое можно заметить: в интерфейсе администратора изменился интерфейс раздела “Пункты меню”. Во первых, появился флажок, который позволяет выделить все элементы одним нажатием. Как уже можно было догадаться, после взгляда на изображение выше, новый интерфейс позволяет увидеть все меню и вложенные элементы на одной странице оформленные в виде дерева, что позволяет визуализировать созданную структуру. Это дополнение будет крайне полезным для любителей создать несколько пунктов меню с одинаковым именем, ведь с помощью поиска можно легко отследить все повторяющиеся элементы на любом из подуровней и, при необходимости, исправить допущенные ошибки именования.
Управление доступом к меню
Развивая тему удобства интерфейса управления есть еще одно большое дополнение. В Joomla! 3.6 теперь можно организовывать доступ к определенного меню для определенной группы пользователей, что дает возможность тонкой настройки доступа в соответствии с требования каждой группы. Данный функционал теперь доступен в новой вкладке с названием Menu Permissions, которое можно найти в форме создания или редактирования меню. Рассмотрим права доступа, которые доступны для настройки:
- Управление компонентом – разрешает группе получать доступ к интерфейсу администратора. Данные права обычно выдаются только Администратору сайта или Суперпользователю;
- Создать – позволяет группе добавлять контент в выбранном меню, в том числе новые пункты меню;
- Удалить – позволяет группе удалять элементы внутри выбранного меню;
- Изменить – позволяет группе изменять элементы внутри выбранного меню;
- Изменить состояние – позволяет группе изменять состояние элементов внутри выбранного меню, например, опубликовано/не опубликовано.
Эта функция крайне полезна, чтобы разграничить доступ групп пользователей, например, для контент-менеджеров и редакторов, определить доступы каждой группе в соответствии с их потребностями и снизить вероятность неумышленных ошибок.
Фильтр модулей в пунктах меню
С помощью Joomla! создаются большие и сложные сайты, которые могут включать в себя сотни модулей. Системный архитектор понимает, что могут возникать трудности с поддержкой структуры с таким количеством расширений и фильтрация модулей становиться крайне необходима. Новый функционал позволяет администратору ограничить количество модулей, которые можно видеть в компоненте com_modules, например, опубликованные или определенного типа.
В Joomla! 3.6 добавлен новый фильтр и он крайне полезен! Теперь можно сортировать модули прямо на странице редактирования. Например, при редактировании главной страницы можно мгновенно фильтровать перечисленные ниже модули, чтобы отобразить только те, которые назначены для данной страницы. Согласитесь, данное новшество позволит сохранить время и нервы при работе со сложным сайтом обвешанным большим количеством модулей. Опытный администратор не раз занимался некой охотой через менеджер модулей в поисках заветной строки с названием нужного модуля, уверен, многие по достоинству оценят этот простой, но полезный фильтр.
Улучшенное восприятие
Удобство пользования не является ключевым моментом в данном обновление, но в ряде эстетических и функциональных аспектов произошли перемены направленные на улучшение восприятия интерфейса пользователем. Можно отметить возможность прокрутки меню в интерфейсе администратора: при работе со страницей содержащей большое количество компонентов и контента теперь появилась возможность получить доступ ко всем элементам простирающимся за пределами нижней части экрана. Так же хотелось бы отметить еще один фильтр – фильтр пользователей по дате последнего посещения, который поможет отследить активных пользователей и, наоборот, найти мертвые аккаунты. Нельзя ни отметить появление групповых операций: теперь возможно выделить несколько записей и назначить им теги, поменять категорию, опубликовать или отправить в архив; так же, в режиме редактирован пункта меню, появился переключатель, который позволяет скрыть неопубликованные модули; в этой области можно найти еще большое количество мелких дополнений, которые делают интерфейс интуитивно понятным. Учитывая то, что большинство новичков в Joomla! жалуется на сложности интерфейса, данные улучшения будут как нельзя кстати.
Чтобы осветить каждое из 400 дополнений в Joomla! 3.6 потребуется достаточно много времени, у читателя не хватит на это сил и времени, но есть одно крайне незначительное улучшение о котором хотелось бы поговорить. Возникает ситуация когда статья уже почти написана, но в выпадающем списке категорий не получается найти нужную строчку и вы понимаете, что нужно создать новую запись в менеджере категорий; так было раньше, теперь категорию можно создавать “налету” прямо из формы редактирования статей, контактов, баннеров или ленты новостей.
Это действительно может раздражать когда вы пишите достаточно длинную статью (как, например, данный пост) и чтобы ее закончить нужно назначить категорию, которой еще не существует. В более ранних версиях это значит, что нужно сохранить текущий проект, закрыть страницу и перейти к менеджеру категорий, создать новую категорию, после чего вернуться обратно к проекту статьи и закончить начатое. Теперь категории создаются не закрывая экрана статьи, просто нажмите на категорию, который отражает не только список категорий, но и панель поиска. При вводе значений в строке поиска, если ни одна категория с таким именем не была найдена, будет предложено создать категорию с введенным именем. Нажмите клавишу Enter и она будет создана автоматически и присвоена для текущего материала.
Что нового для разработчика?
После прочтения вышеописанного можно смело заявить, что рядовые пользователи и администраторы Joomla! в версии 3.6 получили достаточно улучшений, которыми могут наслаждаться довольно долго, но создается ощущение, что разработчикам досталось меньше любви и они могут почувствовать себя несколько обделенными? Конечно, они должны страдать, но только не в рамках данного релиза, и, по ощущениям, в Joomla! 3.6 большая часть работы проделана именно ради того, чтобы принести счастье разработчикам.
Новые возможности backend-форм
Сразу следует отметить две новые фичи связанные с бэкэнд-формами, которые определяются в формате XML. Прежде всего это функция showon в настройке полей, которая доступна в компоненте конфигураций. Эта маленькая функция позволяет показать/скрыть часть или несколько частей определенного вами XML на основе значений другого поля, это дает возможность создавать более читаемые и удобные экраны конфигурации.
И, наконец, изменение, на наш взгляд, одно из лучших, которое могли ждать программисты - Sub Form Field, или если интерпретировать на русский язык, то можно описать как вложенная форма, которая по сути является создаваемым типом поля, далее постараемся пояснить что же это такое, а разработчики скорее всего уже догадались о чем речь. Очень часто встает задача объединения нескольких полей, например, текст, поле ввода и метки нужно использовать в рамках одной формы, а затем повторить эту процедуру в других местах. В Joomla! 3.6 теперь можно создать шаблон и использовать его необходимое количество раз. Другими словами в полной мере используется принцип “не повторяйся” избавляя программиста от рутины, достаточно задать единую форму в формате XML и вставлять ее в другой XML, а при необходимости использовать код в нескольких формах.
Облегченные запросы к базе данных
В классе JDatabaseQuery были добавлены три новых метода, которые призваны улучшить обработку запросов к базе данных:
- extendWhere
- orWhere
- andWhere
Данные методы позволяют создавать более сложные запросы к базе данных, программист может не беспокоиться за синтаксис, запрос не будет заблокирован при первом исполнении. Это небольшое, но существенное дополнение, которое примечательно тем, что демонстрирует возможности обратной совместимости Joomla!, которое является альтернативой стандартному методу Where.
Поддержка SACC/SCSS синтаксисом в шаблонах
Не стоит вскакивать с кресла и хлопать в ладоши, Joomla! вовсе не обладает встроенным анализатором файлов SACC/SCSS, но теперь можно их редактировать непосредственно на экране Менеджера шаблонов. Ранее подобные файлы не поддерживались, но сейчас это исправлено.
Мелкие улучшения
Вышеуказанные улучшения именно то, что действительно задевает, но, как мы уже говорили, количество исправлений просто ошеломляет. Следует упомянуть о более эффективном хранении динамических переменных JavaScript и улучшение производительности их обработки, а так же нескольких новых функциях, таких как поддержка обратного кэширования веб-серверов Varnish или Nginx, обновления редактора CodeMirror и библиотеки jQuery.
В заключение
Об этом не стоит говорить, но несмотря на список обновлений, который официально представлен с выходом Joomla! 3.6 это всего лишь некоторые из основных улучшений и, в действительности, список выходит далеко за рамки цифры 400. Если вы заинтересованы в получении более подробной информации, можно обратиться к основной странице Joomla! 3.6, если ищите более детальный обзор, то рекомендуем идти сразу в официальный репозиторий GitHub.
Если учитывать тот факт, что изначально Joomla! 3.6 обсуждалась как некая затычка между версиями 3.5 и 3.7, а по факту то количество изменений, которое мы видим не может ни удивлять, делаем вывод, что команда Joomla! очень тесно общается с сообществом и охотно принимает от них обратную связь. Задан определенный темп развития и выход следующей версии 3.7 несомненно интригует и заставляет задуматься.
Соседние материалы | ||||
Создание модуля для панели управления в Joomla 3 | Часы и таймер обратного отсчёта для Joomla |