✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

Kuidas tühistada Gutenbergi plokid

9

Üks levinumaid probleeme Gutenbergi plokkidega teema või pistikprogrammi värskendamisel on see, et ploki koodi muutmine katkestab kõik seda plokki kasutavad olemasolevad postitused. Õnneks pakub WordPress lahendust; viis blokeerida plokid. Selles postituses vaatame, kuidas seda teha.

Kui olete varem plokkide arendamisega töötanud, olete tõenäoliselt selle ploki veaga tuttav, kui olete ploki lisanud ja hiljem savefunktsiooni muutnud.

Kuidas tühistada Gutenbergi plokid

See juhtub seetõttu, et WordPress võrdleb andmebaasis salvestatud plokki saveteie ploki funktsiooni praeguse koodiga ja need ei ühti. WordPress ei suuda erinevust parandada. Enamasti saad klõpsata plokil kolmel punktil ja valida “Proovi blokeerida taastamist". Kui savefunktsioonis tehtud muudatused olid väikesed (nt klassivahetus), suudab WordPress ploki taastada. Halvimal juhul d Peate klõpsama "Teisenda HTML-iks" ja te kaotate oma ploki editfunktsionaalsuse. Ilmselgelt ei saa me eeldada, et meie blokeerimiskoodi kasutajad leiavad käsitsi kõik seda plokki kasutavad postitused ja teevad igaühe jaoks need toimingud.

Nii et enne savefunktsiooni värskenduste tegemist lisame koodi, mis annab WordPressile teada, kuidas käsitleda vana sisu, mis on salvestatud vana savefunktsiooniga.

Lähme koodi sisse!

See on tegelikult üsna lihtne. Lühidalt, mida me tegema peame, on; lisage funktsioonikutsele deprecatedatribuut. registerBlockType()See vara eeldab massiivi. See tähendab, et saate ploki mitu korda aegunud, lisades massiivi mitu kirjet. Iga amortisatsioon on määratletud kui objekt, millel on täielik attributesomadus ja (vana) savefunktsioon.

Teisisõnu määratlete deprecatedatribuudi massiivina ja seejärel kopeerite sellesse oma ploki attributesja savefunktsiooni. Peate lisama atribuudid, kuigi te ei muuda neis värskenduses midagi. Te ei pea editfunktsiooni amortisatsiooni arvestama.

Vaatame seda praktilisemas näites.

Oletame, et meie blokeerimiskood näeb välja umbes selline. Funktsioon editon välistatud, kuna me ei pea sellega amortisatsiooniga tegelema.

Seejärel oletame, et tahame teha muudatusi mõlemas atribuudis ning salvestada ja vältida olemasolevate plokkide purustamist. Lisame deprecatedatribuudi ja kopeerime sellesse kogu attributesja savemassiivi elemendina. Seejärel saame teha mis tahes muudatusi attributesja/või savefunktsiooni.

Kui see kood on koostatud, saate otsida olemasolevat postitust vana plokkkoodi abil ja te ei tohiks katkist koodi saada!

WordPress selgitab välja, et plokk kasutab meie aegunud koodi, ja laadib sisu vananenud savekoodi abil. Kui teete plokis muudatused ja värskendate postitust, salvestatakse plokk uue savefunktsiooni abil.

Täpsem amortisatsioon ja edasine lugemine

Ülaltoodud koodinäide on amortisatsiooni kõige elementaarsem vorm. migrateWordPress toetab rohkem funktsioone, näiteks supportslisamist ja isegi konstantide (mõelge versiooninumbritele) määramist teie aegunud koodile. Vaadake WordPressi dokumentatsiooni ploki amortisatsiooni kohta.

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem