Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Αποκλεισμός προσθηκών και αγκίστρων WordPress


Αποκλεισμός προσθηκών και αγκίστρων WordPress


Ακολουθεί μια σύνοψη του τρόπου με τον οποίο οι προσθήκες μπλοκ μπορούν να χρησιμοποιήσουν τα άγκιστρα του WordPress, συγκεκριμένα τη νέα δυνατότητα Block Hooks που εισήχθη στο WordPress 6.4:

1. Αρχές Block Hooks:
- Αυτόματη τοποθέτηση: Τα μπλοκ μπορούν να τοποθετηθούν αυτόματα όταν προστίθεται άλλο μπλοκ στο περιεχόμενο, εξαλείφοντας την ανάγκη για μη αυτόματη εισαγωγή.
- Ορατότητα και έλεγχος: Το μπλοκ που έχει εισαχθεί είναι ορατό στο πρόγραμμα επεξεργασίας και οι χρήστες διατηρούν τον έλεγχο της αυτόματης εισαγωγής του, επιτρέποντας μια προσαρμοσμένη εμπειρία επεξεργασίας.

2. Περιορισμοί και εκτιμήσεις:
- Τα Block Hooks λειτουργούν μόνο σε μη τροποποιημένα πρότυπα, τμήματα προτύπων και μοτίβα που παρέχονται από θέματα. Δεν λειτουργούν σε περιεχόμενο αναρτήσεων, τροποποιημένα πρότυπα/τμήματα ή μοτίβα που δημιουργούνται από τον χρήστη.
- Από το WordPress 6.4, η αυτόματη εισαγωγή δεν λειτουργεί με μπλοκ που έχουν προσαρμοσμένη λειτουργία αποθήκευσης, καθώς μπορεί να οδηγήσει σε σφάλματα επικύρωσης μπλοκ. Οι προγραμματιστές θα πρέπει να χρησιμοποιούν δυναμικά μπλοκ για συμβατότητα.

3. Δύο τρόποι για να αγκιστρώσετε μπλοκ:
ένα. Χρησιμοποιώντας το `block.json`:
- Παρέχει έναν απλό τρόπο σύνδεσης μπλοκ τρίτου κατασκευαστή, αλλά με περιορισμένη ευελιξία.
- Η ιδιότητα «blockHooks» στο «block.json» επιτρέπει τον καθορισμό της θέσης του αγκιστρωμένου μπλοκ (πριν, μετά, πρώτο παιδί, τελευταίο παιδί).
σι. Χρήση του φίλτρου "hooked_block_types":
- Προσφέρει μεγαλύτερη ευελιξία σε σύγκριση με το «block.json», επιτρέποντας αγκίστρωση υπό όρους με βάση το πρότυπο, το τμήμα προτύπου ή το μοτίβο.
- Η συνάρτηση επανάκλησης για το "hooked_block_types" λαμβάνει παραμέτρους όπως τα αγκιστρωμένα μπλοκ, τη θέση, το μπλοκ αγκύρωσης και το πλαίσιο.

4. Προτιμήσεις για προγραμματιστές:
- Τα αγκιστρωμένα μπλοκ θα εμφανιστούν στον Επεξεργαστή ιστότοπου, δίνοντας στους χρήστες τον έλεγχο της τοποθέτησής τους. Οι προγραμματιστές δεν μπορούν να επιβάλλουν τη θέση ενός μπλοκ εάν ο χρήστης θέλει να το μετακινήσει.
- Δεν συνιστάται η σύνδεση στατικών μπλοκ (με προσαρμοσμένες λειτουργίες αποθήκευσης), καθώς μπορεί να προκαλέσει σφάλματα επικύρωσης μπλοκ. Τα δυναμικά μπλοκ είναι η προτιμώμενη επιλογή για τα άγκιστρα μπλοκ.
- Οι προγραμματιστές θα πρέπει να διασφαλίζουν ότι τα αγκιστρωμένα μπλοκ τους είναι συμβατά με την τρέχουσα έκδοση του WordPress και το API του Block Hooks.

Συνοπτικά, η νέα λειτουργία 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/