12 нових можливостей Joomla 4
- 1. Новий шаблон адмінки з повною підтримкою доступності
- 2. Спрощений процес установки
- 3. Новий медіа-менеджер
- 4. Publishing Workflow - Процеси
- 5. Шаблони листів
- 6. Покращене керування перевизначеннями
- 7. Web Services API
- 8. CLI (Command Line Interface)
- 9. Веб-ассети
- 10. Настроюється дашборд панелі управління
- 11. Керування заголовками HTTP
- 12. Використання Bootstrap 5
- 13. Висновок + відео
Чи довго чи мало, але 9 років по тому після виходу Joomla 3 світ побачила нову версію – Joomla 4.
У новій версії CMS розробники додали деякі корисні, і навіть унікальні можливості про які я розповім в цій статті.
На мою скромну думку, велика частина нових можливостей Joomla 4 спрямована на розробників. Це означає, що ви не побачите в новій версії масштабних змін, але це не означає, що їх там немає. Просто більшість з них "під капотом".
Переносячи порівняння нової версії з трійкою, можна уявити собі автомобіль, який вже давно на ринку. І ось була випущена нова рестайлінгова версія. На вигляд підправили фари, бампер, перефарбували салон. Пересічний водій не побачить великої різниці з минулою версією авто. Але ось під капотом замінили половину нутрощів. Заглядаючи туди, Автомеханік відчуває почуття непідробної радості, тому що тепер з такою машиною можна зробити значно більше – тюнінгувати так, як раніше не можна було і мріяти.
Саме в такій формі я раджу дивитися на Joomla 4 споживачам (адміністраторам, власникам сайтів, і т.п.). Нова версія, це скоріше про широту і якість нових можливостей, а не про нові компоненти з коробки (хоча це теж є).
Гаразд, закінчимо зі вступом, і подивимося, що ж нового пропонує нам Joomla 4.
Дисклеймер: писати нижче про складні речі я намагаюся максимально простою мовою, для людей, що не відносяться до розробників. Тому програмісти, верстальники та інші брати по зброї: не судіть опис строго. Приклади нових можливостей з горою термінів і коду ви завжди зможете знайти в офіційній документації, на яку, до речі, в цій статті чимало посилань.
Новий шаблон адмінки з повною підтримкою доступності
Звичайно, найбільш візуально помітним нововведенням в Joomla 4 став новий шаблон адмінки Atum.
О, скільки ж, вибачте, срачу, було навколо цього шаблону в процесі розробки! Справа доходила до переходу на особистості. Сподіваюся, хоч без рукоприкладства обійшлося =).
В результаті, як це зазвичай буває, всі розділилися на прихильників і супротивників. Пора з'ясувати, до кого віднесете себе ви. Дивіться:
Повинен зізнатися, після вже звичної адмінки Joomla 3 тут, на екрані в 24 дюйма, у мене спочатку трохи кров з очей не потекла. Це було перше враження. Проте…
Я згадав, що при переході з Joomla 2.5 на Joomla 3 відчуття були дуже схожі. А зараз, повертаючись іноді в адмінки Joomla 2.5 і навіть Joomla 1.5, думаю: "і це мені подобалося?!". Коротше кажучи, у візуальній складовій все дуже суб'єктивно.
Зараз, коли адмінка Joomla 4 вже трохи примелькалась, вона сприймається дуже навіть непогано.
Так заради чого весь сир-бор зі зміною оформлення? Чому все саме так-чому деякі кольори мають занадто чіткі і різкі переходи? Вся справа в доступності для людей з обмеженими можливостями.
Ми з вами можемо нескінченно багато критикувати оформлення і виявляти в ньому недоліки, але існують чіткі правила того, як повинен виглядати інтерфейс, доступний, в тому числі, для слабозорих, а також всяких читалок. Ці правила стандартизовані, і розробники Joomla 4 підійшли до них консервативно, незважаючи на всю критику.
В результаті ми отримали шаблон адмінки, яким зможуть користуватися всі, незалежно від фізичних обмежень. Як на мене, це дуже похвально.
Якщо ваші очі і почуття прекрасного все одно відчувають жахливий біль і страждання, то є невеликий лайфхак: ви можете зайди в Налаштування стилів шаблону адмінки:
Система - > стилі панелі управління - > Atum - > Вкладка «Параметри кольору»
І там підкрутити деякі кольори під себе. Тут же є можливість взагалі перевести Joomla монохромний режим.
Іншою неприємністю стало загальне зміни розташування деяких елементів в адмінці.
Наприклад, розробники перенесли основне меню в ліву частину, створили сторінку "Система" з великою кількістю розділів, куди потрапили, в тому числі плагіни, шаблони, модулі, і інші елементи, які ми звикли бачити в основному меню.
Чи зручно це? Для старичків – навряд чи. Для новачків - думаю, так. Все-таки простіше знайти потрібний розділ у великому списку на одній сторінці, ніж вишукувати його десь в надрах меню або менеджерів.
Загалом, адмінка вийшла цікавою. Думаю, в оновленнях її ще "причешуть".
Спрощений процес установки
У Joomla 4 оновили установку. Вона стала мати менше кроків. Все зайве з неї прибрали (а чи було воно там?). Швидкість установки також збільшилася.
В цілому процес практично не змінився: вводимо назву сайту, дані адміна, дані для підключення до бази даних, видаляємо директорію після.
Можливо, новий процес установки дозволить простіше пройти цей крок новачкам, що, безсумнівно, сприятиме популяризації Joomla 4.
Новий медіа-менеджер
У Joomla 4 оновили, нарешті, медіа-менеджер. Це місце, де ви можете крутити-вертіти всі зображення сайту.
Медіа-менеджер в Joomla 3 представляв собою жалюгідне, жалюгідне видовище. Користуватися ним було можна, але це мало хто робив. Особисто я використовував або менеджер від редактора JCE або стороннє розширення Quantum Manager.
Чим же може похвалитися оновлений медіа-менеджер Joomla? Він вміє:
- Масово завантажувати зображення
- Масово виділяти зображення
- Більш зручно ходити-бродити по папках
- Показувати спливаюче збільшене зображення
- Редагувати зображення (повертати, обрізати)
- Показувати інформацію про зображення (тип, дати, розмір та ін.)
- Має кілька видів відображення
- Має пошук по зображеннях (правда в рамках одного каталогу)
Загалом, нічого незвичайного.
Найкориснішою функцією нового медіа Менеджера, на мій погляд, є підготовка для легкої інтеграції хмарних файлових систем. Тобто за допомогою додаткового плагіна можна буде інтегрувати в нього, наприклад, свій Дропбокс або Гугл.Диск. Ось це може бути дійсно зручно і круто. Але це має бути створено окреме.
Publishing Workflow - Процеси
А ось це вже дійсно корисна для багатьох функція, якою, в даний час, не може похвалитися жодна інша популярна CMS. В оригіналі вона називається Workflow, в локалізації – процеси.
Що ж являють собою ці "процеси"? Якщо в двох словах - це можливість створення премодерації матеріалів.
У кращих традиціях Joomla функція ця розроблялася дуже довго, налаштовується досить складно, але творить чудеса.
Ви можете мати будь-яку кількість груп користувачів, для кожної групи можуть бути призначені свої права на роботу з матеріалами, з'являється так званий життєвий цикл матеріалу, коли він створюється першим користувачем, коригується другим, перевіряється і публікується третім. Також може бути четвертий, п'ятий, шостий – все залежить від того, як ви це налаштуєте.
Це супер-корисна функція для різних ЗМІ, де є багато авторів, і є редактор. Тепер автори можуть додавати тексти на сайт. Після цього Тексти будуть йти від групи до групи, в кожній групі з текстом будуть працювати користувачі зі своїми правами, вони зможуть ганяти текст вперед або назад по його життєвому шляху.
Як ви розумієте, такий функціонал за визначенням складно налаштовується. Але сам факт його існування - вже дуже радує.
За процесами буде окрема, велика стаття. Поки ви можете пограти з ними самостійно, слідуючи інструкціям з документації.
P. S. За замовчуванням функціонал процесів відключений. Для його активації потрібно зайти в:
Матеріали - > Налаштування - > Вкладка «Інтеграція» - > Опція «Процеси»
І активувати процеси.
Шаблони листів
Також дуже, дуже корисна функція.
Тепер в Joomla 4 є окремий менеджер шаблонів листів, в якому ви можете налаштувати текст кожного листа, що відправляється на кожне завдання.
Ті, хто працював з Joomla 3 і більш ранніми версіями, знають, скільки кровушки могла попити ця настройка раніше.
Тепер ви можете легко редагувати кожен лист через спеціальний менеджер. Крім того, в листах підтримуються різні змінні, як наприклад, ім'я користувача, дата, назва сайту та ін. Просто подивіться на цю красу:
Як на мене, це дійсно корисна штука, для всіх, без винятку.
Покращене керування перевизначеннями
Це я міг уявити тільки в мріях. Хоча і там воно було розпливчасто =).
У Joomla існує механізм перевизначень. Він потрібен, щоб внести зміни в макети відображення, не створивши при цьому хакі, які будуть втрачені при оновленні. Щоб вирішити цю проблему, практично будь-який макет будь-якого розширення можна перевизначити в використовуваний вами шаблон Joomla і там вже редагувати як душі завгодно.
Але у такого підходу є і зворотна сторона - перевизначені макети більше не оновлюються разом з основним розширенням. Може трапитися так, що розробники розширення внесли в оновленні новий функціонал, який зажадав змін і в макеті відображення. Розширення оновиться, але використовуватися буде саме ваш зумовлений макет з шаблону, а значить, новий функціонал буде втрачено.
У Joomla 4 з'явилася можливість відстежувати зміни між основними макетами і їх перевизначеннями і буквально бачити різницю в них. Це допоможе вносити потрібні виправлення та оновлення в перевизначені макети набагато простіше.
Як це працює?
По-перше, якщо при оновленні розширення Joomla (або, власне, Joomla) змінилися файли в ядрі, які були перевизначені в шаблон раніше, то Joomla покаже інформацію про це у відповідному блоці на головній сторінці адмінки, ось тут:
При кліці по цій іконці, ви побачите детальну інформацію про файли зі зміненими макетами, які були перевизначені в ваш шаблон. Відтворити це не так просто, а тому дозволю собі показати вам картинку з офіційної документації, для загального представлення:
Ну і по-друге, якщо ви зайдете в:
Система - > шаблони сайту - > редагувати [Ваш_шаблон] - > Вкладка «Редактор»
і відкриєте в файлах зліва будь-який ваш перевизначений файл, то зможете побачити відмінності в оригінальному і зміненому файлах, які будуть підсвічені (для цього потрібно активувати опцію "Показати відмінності" на цій же сторінці):
Здорово, зручно. Але, знову ж таки, ця функція буде корисна в першу чергу для розробників.
Web Services API
У Joomla 4, нарешті, з'явилося повноцінне Web API. Що це і як це може бути корисно?
Якщо говорити простою мовою, тепер можна управляти Joomla через сторонні сервіси/додатки. Joomla 4 може приймати запити ззовні на управління практично всім контентом.
Наприклад, тепер можна віддалено:
- Отримати список статей/категорій/користувачів та ін.
- Додати нову статтю/категорію/користувача та ін.
- Видалити їх же
- Оновити їх же
Хтось може запитати: «навіщо це потрібно, якщо можна робити все з адмінки»?
Перший приклад: тепер можна створити для управління Joomla мобільний додаток. При цьому його розробникам не доведеться вникати в те, як влаштований код CMS.
Другий приклад: тепер можна створити мережу сайтів на Joomla, яка буде управлятися централізовано, з одного місця. Там же можна буде бачити всю статистику по всій мережі: загальна кількість користувачів на всіх сайтах. Кількість статей, повідомлення і т. п.
Третій приклад: Тепер ви легко можете створити модуль, скажімо, анонсів новин для першого вашого сайту, які з'являються на другому вашому сайті. Досить просто отримувати їх по Web API.
Загалом, можна придумати дуже багато всього вельми і вельми вражаючого. Але це, знову ж таки, в першу чергу для розробників.
Для тих, хто хоче ознайомитися з Web API Joomla докладніше, раджу подивитися його опис на Постмені. Там все зручно показано.
CLI (Command Line Interface)
Це складно описати простою мовою. Є в роботі з сайтами завдання, які виконуються довго, або дуже довго. Наприклад, створення або розгортання резервної копії великого сайту. Коли ви виконуєте ці завдання через браузер (через адмінку Joomla), то обмежені безліччю лімітів, які використовує сервер, щоб запобігти неприємним ситуаціям, на зразок зависання від однієї великої задачі. CLI-це консоль. У ній ви можете також запускати на виконання важкі PHP-скрипти, але при цьому не будете стикатися з деякими базовими серверними обмеженнями.
У Joomla 4 ви можете швидше і простіше створити додаток, який буде виконувати подібні завдання через консоль.
Якщо ви далекі від програмування і мало що зрозуміли з опису вище, просто проігноруйте цей пункт, він не для вас.
Веб-ассети
Дуже корисна можливість, покликана навести в Joomla 4 порядок з JS і CSS файлами.
Хто працював з Joomla 3, знає, що в шаблоні, макеті, та й будь-якому, за великим рахунком, файлі, можна підключати JS і CSS файли або прямо шматки JS/CSS-коду.
Все це, звичайно, прекрасно, але перетворюється на величезний біль, коли потрібно, наприклад, внести зміни в JS-файл певного компонента. Або, якщо потрібно відключити якийсь файл / шматок коду, який виводиться в шаблон через head.
У Joomla 4 використовується принцип веб-ассетів. Якщо говорити простою мовою, з'являється:
- Єдиний файл asset.json (для кожного окремого розширення) з описом підключаються JS/CSS-файлів
- Єдина база (реєстр), в якій реєструються всі підключені JS/CSS-файли, але не активуються за замовчуванням
- Можливість на будь-якій сторінці підключати і відключати будь-які файли або набори файлів (пресети) з цієї бази
- Можливість перевизначати будь-які файли з цієї бази
Сльози щастя будуть текти з очей розробників розширень, шаблонів, сайтів Joomla, після ознайомлення з цією новою можливістю.
Штука дуже корисна.
Настроюється дашборд панелі управління
В адмінці Joomla 4 з'явився простіший спосіб налаштувати дашборд під себе. Воно було і в Joomla 3, але майже ніхто не змінював там головну сторінку адмінки, оскільки це злегка нетривіально. В Joomla 4 все стало простіше.
По-перше, у всіх блоків дашборда ви можете бачити іконку настройки, через яку легко змінити параметри блоку або відключити його:
По-друге, в нижній частині дашборда з'явився блок "додати модуль в панель управління". Він не робить нічого незвичайного - просто дозволяє вибрати модуль адмінки і додати його на дашборд:
Не можу сказати, що це дуже корисне нововведення, але своїх шанувальників, безумовно знайде. Особливо, якщо розробники додадуть можливість перетягування блоків дашборда мишкою.
Керування заголовками HTTP
У Joomla 4 з'явився новий плагін, який дозволяє керувати заголовками HTTP. Називається він HTTP Headers. Легко шукається в менеджері плагінів за цією назвою.
Завдання плагіна, видавати ті чи інші параметри в заголовку сторінок, які генерує Joomla. Параметрів таких нині стало досить багато. Ось налаштування плагіна:
Ви можете включити / виключити як базові заголовки, так Додаткові.
Навіть якщо ви не є веб-розробником, а просто маєте сайт на Joomla, раджу, все-таки, ознайомиться з основним набором HTTP-заголовків. Можливо, деякі з них виявляться вам корисними.
Використання Bootstrap 5
В Joomla 4 включили Bootstrap 5. Ви зовсім не зобов'язані його використовувати, але якщо вам потрібно швидко накидати інтерфейс, то цей CSS-фреймворк може виявитися корисним.
У Joomla 4 ви можете легко підключити Bootstrap 5 в ваш шаблон (якщо, звичайно, це ще не зроблено), а далі використовувати всю міць його вбудованих компонентів, які, зазвичай, викликаються в один рядок коду.
Детальніше про виклик компонентів Bootstrap в Joomla 4 можна почитати тут (стаття писалася ще для Bootstrap 4, який планувалося використовувати в Joomla 4, але здебільшого вона буде актуальна і для Bootstrap 5, який, в підсумку, додали).
Висновок + відео
Крім описаних вище нововведень, Joomla 4 несе в собі і багато інших, набагато менш помітних оку – це і велике оновлення API і поліпшена безпека, а також незліченна безліч дрібних поліпшень.
Joomla 4 робили довго. Я б сказав, дуже довго. Але якщо згадати, чим була Joomla 3 в момент виходу і що вона являє собою Зараз, на момент випуску Joomla 4 – це дві великі різниці.
У процесі життєвого циклу Joomla 3 поступово обростала новими функціями і корисними можливостями. Думаю, що і з Joomla 4 буде також. Тому не судіть строго першу версію. У ній є великий заділ для розробників, так що все краще ще попереду.
Читайте також: Як створити сайт на Joomla!: покрокове керівництво для початківців.
Вітаю всіх на нашому інтернет-журналі. Я - Вольдемар Воронцовський. Цей матеріал написаний і опублікований одним з наших авторів (експертом у своїй справі). За кожною статтею стоїть досвідчений співробітник нашої команди, який перевірив матеріал на помилки і актуальність. Познайомитися з нами можна в розділі - «Редакція сайту».