Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Блокуйте плагіни та хуки WordPress


Блокуйте плагіни та хуки WordPress


Ось короткий опис того, як блокові плагіни можуть використовувати хуки WordPress, зокрема нову функцію блокових хуків, представлену в WordPress 6.4:

1. Принципи блочних хуків:
- Автоматичне розміщення: блоки можуть автоматично позиціонувати себе, коли інший блок додається до вмісту, усуваючи потребу вручну вставляти.
- Видимість і контроль: вставлений блок видно в редакторі, і користувачі зберігають контроль над його автоматичним вставленням, що дозволяє налаштовувати процес редагування.

2. Обмеження та міркування:
- Block Hooks працюють лише в незмінених шаблонах, частинах шаблонів і шаблонах, наданих темами. Вони не функціонують у вмісті публікацій, змінених шаблонах/частинах або створених користувачами шаблонах.
- Починаючи з WordPress 6.4, автоматичне вставлення не працює з блоками, які мають спеціальну функцію збереження, оскільки це може призвести до помилок перевірки блоку. Розробники повинні використовувати динамічні блоки для сумісності.

3. Два способи зачепити блоки:
a. Використовуючи `block.json`:
- Забезпечує простий спосіб підключення стороннього блоку, але з обмеженою гнучкістю.
— Властивість `blockHooks` у `block.json` дозволяє вказати позицію підключеного блоку (до, після, перший дочірній елемент, останній дочірній).
b. Використання фільтра `hooked_block_types`:
- Пропонує більшу гнучкість порівняно з `block.json`, дозволяючи умовне підключення на основі шаблону, частини шаблону або шаблону.
- Функція зворотного виклику для `hooked_block_types` отримує такі параметри, як підключені блоки, позиція, блок прив’язки та контекст.

4. Зауваження для розробників:
- Підключені блоки з'являться в редакторі сайту, надаючи користувачам можливість контролювати їх розміщення. Розробники не можуть форсувати положення блоку, якщо користувач хоче його перемістити.
- Перехоплення статичних блоків (з власними функціями збереження) не рекомендується, оскільки це може спричинити помилки перевірки блоку. Динамічні блоки є кращим вибором для Block Hooks.
- Розробники повинні переконатися, що їх підключені блоки сумісні з поточною версією WordPress і її API блоків-перехоплювачів.

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

цитати:
[1] https://github.com/WordPress/gutenberg/issues/54904
[2] https://kinsta.com/blog/wordpress-hooks/
[3] https://essential-blocks.com/block-hooks-everything-you-need-to-know/
[4] https://www.youtube.com/watch?v=ezPHiyhhaoQ
[5] https://developer.wordpress.org/block-editor/reference-guides/packages/packages-hooks/