Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Blockera plugins och WordPress-hakar


Blockera plugins och WordPress-hakar


Här är en sammanfattning av hur blockplugins kan använda WordPress-hooks, särskilt den nya Block Hooks-funktionen som introduceras i WordPress 6.4:

1. Principer för blockkrokar:
- Automatisk placering: Block kan automatiskt placera sig själva när ytterligare ett block läggs till innehållet, vilket eliminerar behovet av manuell infogning.
- Synlighet och kontroll: Det infogade blocket är synligt i redigeraren och användare behåller kontrollen över dess automatiska infogning, vilket möjliggör en anpassad redigeringsupplevelse.

2. Begränsningar och överväganden:
- Blockkrokar fungerar bara i omodifierade mallar, malldelar och mönster som tillhandahålls av teman. De fungerar inte i inläggsinnehåll, modifierade mallar/delar eller användargenererade mönster.
– Från och med WordPress 6.4 fungerar inte automatisk infogning med block som har en anpassad sparafunktion, eftersom det kan resultera i blockvalideringsfel. Utvecklare bör använda dynamiska block för kompatibilitet.

3. Två sätt att haka fast block:
a. Med `block.json`:
- Ger ett enkelt sätt att koppla ett tredjepartsblock, men med begränsad flexibilitet.
- Egenskapen `blockHooks` i `block.json` tillåter att specificera positionen för det krokade blocket (före, efter, första barnet, sista barnet).
b. Med filtret `hooked_block_types`:
- Erbjuder mer flexibilitet jämfört med `block.json`, vilket tillåter villkorad hooking baserat på mallen, malldelen eller mönstret.
- Återuppringningsfunktionen för `hooked_block_types` tar emot parametrar som hooked blocks, position, anchor block och context.

4. Överväganden för utvecklare:
- Hooked blocks kommer att visas i Site Editor, vilket ger användarna kontroll över sin placering. Utvecklare kan inte tvinga ett blocks position om användaren vill flytta det.
- Anslutning av statiska block (med anpassade sparafunktioner) rekommenderas inte, eftersom det kan orsaka blockvalideringsfel. Dynamiska block är det föredragna valet för Block Hooks.
- Utvecklare bör se till att deras hooked block är kompatibla med den aktuella WordPress-versionen och dess Block Hooks API.

Sammanfattningsvis ger den nya Block Hooks-funktionen i WordPress 6.4 och senare ett kraftfullt sätt för blockplugins att automatiskt infoga sina block på specifika platser, samtidigt som det tillåter användare att kontrollera placeringen av dessa block i Site Editor.

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