Viitorul WordPress e pe React

Am un proiecțel de weekend (la care lucrez de vreo câteva weekenduri, deja) și mă uitam că parcă devine mult mai ușor să dezvolți o temă pe React, folosind WordPress pe post de CMS “fără cap”. Bine, chestia asta e relativă… dar pentru proiecte mari, are mai mult sens să schimbi complet platforma.

Primul pas făcut spre React e Gutenberg, noul editor, care aduce mai multă frustrare decât lejeritate în editare, dar na, asta-i viața, or să-l ducă la bun sfârșit, la un moment dat, și n-o să mai fie atât de prost. Însă mutarea către React a fost deja făcută.

WordPress va continua să funcționeze la fel, cu backend-ul și frontend-ul în PHP, multe versiuni de-acum înainte, pentru că e extrem de simplu de rulat în forma actuală. Iar pentru cotă de piață, nu cred c-o să-și bată nimeni capu’ să-l schimbe. Nu cred că există un CMS mai ușor de instalat pe un hosting de un dolar pe lună.

Însă actuala arhitectură te limitează masiv pe partea de frontend. “Chemi” prea multe funcții, se mai împiedică un plugin de câte un update, în fine, iar cu timpul, mi se pare că devine tot mai greu de întreținut. Nu e mai simplu cu niște API-uri?

Pe de altă parte, pentru cineva fără cunoștințe foarte tehnice, ca să migrezi pe REST e o bătaie de cap prea mare. Am făcut un exercițiu, de curiozitate. Am luat un pachet de la cloudify.ro, un băiat din Timișoara, cred, care oferă VPS-uri.

Am pornit un Ubuntu, am instalat nginx, am adăugat un domeniu luat prin Google Domains, am pus un SSL de la Let’s Encrypt, am instalat Node și MariaDB, iar când să mă pregătesc sufletește să instalez și-un WordPress fără cap, zbang!, tre’ să instalez Laravel.

Și distracția continuă pe măsură ce vrei să mergi mai departe. Am citit ceva că Laravel cere nu știu ce de la Apache, iar eu nu vreau să-i dau Apache – mă rog, n-are nevoie, da’ bănui că e mai simplu pentru unii să meargă pe ruta aia. Am găsit ceva documentație, stai că tre’ să instalez Composer. N-am mai terminat, că m-am întors la proiecțelu’ de weekend, dar mi-am dat seama că, dacă vreau să rulez WordPress în forma asta, mai am o grămadă de module de Node de instalat.

Și, cumva, asta-i partea păcătoasă la migrarea unui CMS pe o arhitectură nouă. Tre’ să pui Node pe care tre’ să rulezi webpack ca să livrezi bundle-ul, Babel ca să compilezi chestii, iar dacă mai vrei și server side rendering, te cam scarpini după cap. O idee ar fi fost Next.js, dar încă nu sunt foarte convins ce rută să apuc.

În fine, ca să sumarizez, e foarte multă muncă pentru… un blog. În esență, nu prea are sens să-ți bați capul cu toată nebunia asta. Îți ia jumătate de zi doar ca să pregătești serverul. Pentru cineva cu ceva background pe partea tehnică, nu e mare brânză, dar e moartea pasiunii pentru oricine e obișnuit cu click-click-click-ul tipic unei instalări obișnuite.

Însă pe termen lung, pentru orice tip de proiect de site, inclusiv blog, e mult mai fezabil un WordPress care rulează pe Node și randează totul prin React. E mult mai rapid, poți să folosești ce biblioteci ai tu chef pentru diverse features, pentru că oricum le servești într-un bundle – pe care trebuie doar să ai grijă să nu-l faci mai mare decât e nevoie – în loc să depinzi de tot soiul de CDN-uri și de manipularea DOM-ului pentru naiba știe ce efect vrei tu la un click pe un buton.

N-am avut vreun interes deosebit pentru a căuta planurile WordPress pentru viitorul CMS-ului și nici nu mi-am băgat nasul prin trac, să văd la ce se mai lucrează, dar intuiesc că următoarele versiuni se vor concentra serios mai mult pe JavaScript și mai puțin pe PHP.. Personal, cred că e o idee bună, pentru orice developer de WordPress, să se gândească serios la headless și frontend pe React.

Dacă îţi place acest blog şi vrei să-l susţii, cumpără de la eMag folosind acest link.

4 comentarii

  1. Am o întrebare. Nu este mai simplu să bricolezi un CMS custom KISS? Am decis să renunț la WordPresss acum câțiva ani, înainte de Gutemberg, pentru site-urile firmei, au mai rămas blogurile, neupdatate la 5, că nu sunt sigur dacă mai scriu sau nu :)
    Chiar dacă nu ești specialist în php , îți ia maxim 2 zile să-l faci. Și ai avantajul că e ceva „light”, al meu are vreo 5 mega cu tot cu librăriile auxiliare (TinyMCE, Foundation, Font Awsome), față de vreo 70 cât are WP. Plus că dacă ai nevoie de ceva pe partea de design e mai simplu să umbli sub capotă.

    • @Cristian Banu: Teoretic, da, e mai simplu. Pentru un site static, de prezentare, unde n-ai nevoie de actualizat prea multe informații, e mai simplu un HTML chior. Pentru ceva care cere actualizări, e mai simplu să mergi pe un CMS. Un WordPress chior, de bine, de rău, îți oferă un feed RSS pe care nu tre’ să-l bricolezi tu de la zero.

      PS: Eu zic să le updatezi la 5, că sînt multe update-uri de securitate acolo.

    • Am instalate la zi toate update-urile WP, pe unele oricum le face automat, inclusiv pluginurile folosite sunt actualizate, doar că nu am schimbat versiunea.

  2. Next.js e o soluție solidă.

Adaugă un comentariu

Câmpurile marcate cu * sunt obligatorii! Adresa de email nu va fi publicată.