Cum să actualizezi WordPress fără a suprascrie personalizările - strategii?

12 aug. 2010, 06:25:41
Vizualizări: 403
Voturi: 5

De două ori am actualizat WordPress, doar pentru a realiza (palmă pe frunte) că a suprascris unele modificări pe care le-am făcut la șablonul personalizat - la bara laterală sau ceva similar.

Evident, nu TREBUIE să actualizez, dar e mai bine pentru plugin-uri etc., și îmi place să am cele mai recente produse și corectări de erori.

Care sunt strategiile altor oameni pentru actualizări simple la WordPress fără a pierde modificările personalizate făcute la șablonul implicit?

0
Toate răspunsurile la întrebare 5
1
15

Foarte simplu: dacă folosești șablonul implicit, redenumește folderul și declarația fișierului CSS, iar acesta nu va fi actualizat.

Dacă dorești actualizările (de exemplu, Twenty One este adesea actualizat), creează o temă copil.

Informații aici: http://codex.wordpress.org/Child_Themes

12 aug. 2010 06:32:44
Comentarii

Excelent! Te rog actualizează răspunsul tău și pune partea despre child theme în bold și la începutul răspunsului... doar pentru a clarifica că aceasta este modalitatea corectă de a face personalizări.

sorin sorin
20 sept. 2010 10:34:59
4

În primul rând: Nu ar trebui să faci niciodată modificări direct în fișierele de bază ale WordPress. În schimb, scrie un plugin care să facă asta pentru tine.

În al doilea rând: Dacă ai doar personalizări minore sau moderate ale temei, poți folosi un child theme, lăsând astfel fișierele de bază neatârnate. Alternativ, poți redenumi folderul temei pentru a evita ca modificările tale să fie șterse la actualizare.

12 aug. 2010 15:57:45
Comentarii

Modificarea fișierelor de bază este mai rapidă decât scrierea unui plugin dacă nu ești obișnuit. Important este să-ți amintești că ai făcut-o.

Drake Drake
12 aug. 2010 16:17:07

@Drake: apply_filters() și do_action() durează literalmente undeva în jur de 0,0000001 secunde, din câte am văzut ultima dată.

Nu există niciun motiv bun pentru a modifica un fișier de bază.

Viper007Bond Viper007Bond
12 aug. 2010 19:40:11

@Drake: Sunt de acord cu Viper007Bond; NU MODIFICA FIȘIERELE DE BAZĂ. PUNCT. Dacă vrei o scuză pentru a modifica fișierele de bază, poți găsi întotdeauna o cale de a o rationaliza, dar nu este niciodată o idee bună.

MikeSchinkel MikeSchinkel
14 aug. 2010 04:13:33

@AlexakaViper007Bond, Drake a luat în considerare învățarea scrierii de plugin-uri și cercetarea mecanismelor de hooking pentru a descoperi cum să facă unul pentru sarcina specifică. Deci nu, nu durează 0.0000001 secunde, poate dura ore de citit și căutat, în timp ce schimbarea unei linii de PHP poate dura câteva secunde.

Synetech Synetech
17 nov. 2012 19:14:31
0

Nu folosesc actualizatorul din Panoul de control.

Instalez WordPress folosind Subversion; toate modificările mele locale pot fi afișate cu svn diff și în majoritatea cazurilor acestea sunt îmbinate perfect cu noua bază de cod când trec la un nou număr de versiune. Nucleul și multe plugin-uri și teme sunt disponibile prin SVN. Din păcate nu toate, dar există o soluție: creează un depozit pentru a nu pierde niciodată modificările chiar dacă folosești actualizatorul automat pentru un plugin. Evident, unele abilități avansate de VCS sunt de ajutor aici. :)

http://codex.wordpress.org/Installing/Updating_WordPress_with_Subversion

12 aug. 2010 13:17:07
0

Păstrează o copie a codului tău modificat într-un sistem de control al versiunilor. Recomand mercurial.

Adaugă versiunea originală a codului WordPress pe care ai modificat-o în mercurial și comite-o. Apoi adaugă codul tău modificat peste ea și comite-l, dându-i un nume de ramură. Poți să o numești 'siteulnostru' sau altceva.

Ideea este că mercurial acum știe cum diferă siteul tău de versiunea standard. Asta face actualizările mai ușoare.

Când apare următoarea versiune de WordPress, descarc-o și adaug-o peste directorul de lucru local din mercurial. Doar asigură-te că 'actualizezi' copia de lucru la ramura implicită, adică nu la ramura ta 'siteulnostru'. Mercurial acum va ști cum diferă noua versiune de WordPress față de cea anterioară. Mercurial este foarte bun la combinarea diferențelor dintre două versiuni 'copil' ale unui 'părinte' comun și de cele mai multe ori, modificările tale personalizate vor fi integrate fără probleme.

18 aug. 2010 21:46:31
0

Chiar și tema mea personalizată primește actualizări din când în când. Mai întâi o descarc local și folosesc BeyondCompare pentru a compara și a vedea unde sunt modificările, și dacă pot sări în siguranță peste fișierele în care am făcut modificări personalizate. Dacă nu, actualizez manual fișierele sursă înainte de a le încărca pe site-ul meu. Aceasta este un pic de muncă în plus, dar necesară dacă ai făcut modificări personalizate la tema/site-ul tău.

12 aug. 2010 06:45:48