Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Blocca plugin e hook WordPress


Blocca plugin e hook WordPress


Ecco un riepilogo di come i plugin di blocco possono utilizzare gli hook di WordPress, in particolare la nuova funzionalità Block Hooks introdotta in WordPress 6.4:

1. Principi degli hook di blocco:
- Posizionamento automatico: i blocchi possono posizionarsi automaticamente quando un altro blocco viene aggiunto al contenuto, eliminando la necessità di inserimento manuale.
- Visibilità e controllo: il blocco inserito è visibile nell'editor e gli utenti mantengono il controllo sul suo inserimento automatico, consentendo un'esperienza di modifica personalizzata.

2. Limitazioni e considerazioni:
- Gli hook di blocco funzionano solo con modelli, parti di modello e modelli non modificati forniti dai temi. Non funzionano nei contenuti dei post, nei modelli/parti modificati o nei modelli generati dagli utenti.
- A partire da WordPress 6.4, l'inserimento automatico non funziona con i blocchi che dispongono di una funzione di salvataggio personalizzata, poiché potrebbe causare errori di convalida del blocco. Gli sviluppatori dovrebbero utilizzare i blocchi dinamici per compatibilità.

3. Due modi per agganciare i blocchi:
UN. Utilizzando `block.json`:
- Fornisce un modo semplice per agganciare un blocco di terze parti, ma con flessibilità limitata.
- La proprietà `blockHooks` in `block.json` consente di specificare la posizione del blocco agganciato (prima, dopo, primo figlio, ultimo figlio).
B. Utilizzando il filtro `hooked_block_types`:
- Offre maggiore flessibilità rispetto a `block.json`, consentendo l'hook condizionale basato sul modello, sulla parte del modello o sul modello.
- La funzione di callback per `hooked_block_types` riceve parametri come blocchi agganciati, posizione, blocco di ancoraggio e contesto.

4. Considerazioni per gli sviluppatori:
- I blocchi agganciati appariranno nell'editor del sito, offrendo agli utenti il ​​controllo sul loro posizionamento. Gli sviluppatori non possono forzare la posizione di un blocco se l'utente desidera spostarlo.
- Non è consigliabile agganciare blocchi statici (con funzioni di salvataggio personalizzate), poiché potrebbe causare errori di convalida del blocco. I blocchi dinamici sono la scelta preferita per i Block Hooks.
- Gli sviluppatori dovrebbero garantire che i loro blocchi agganciati siano compatibili con l'attuale versione di WordPress e la sua API Block Hooks.

In sintesi, la nuova funzionalità Block Hooks in WordPress 6.4 e versioni successive fornisce un modo potente per i plugin di blocco di inserire automaticamente i propri blocchi in posizioni specifiche, consentendo comunque agli utenti di controllare il posizionamento di tali blocchi all'interno dell'Editor del sito.

Citazioni:
[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/