Cum se codează pentru WordPress?

22 oct. 2011, 09:03:45
Vizualizări: 933
Voturi: 6

În php simplu și framework-uri, codarea se face cu ajutorul instrumentelor IDE, eu folosesc PhpStorm și sunt foarte mulțumit până acum. Recent am decis să explorez cel mai popular CMS din zilele noastre și am rămas confuz cum se codează pentru el?

1) Trebuie să instalez WordPress nu doar pe serverul meu, dar și local? Să editez fișierele în IDE/editor și să folosesc funcția "import/export" din WordPress pentru a sincroniza modificările? Cum ar lucra o echipă de dezvoltatori la asta? Ce se întâmplă cu VCS?

2) Sau trebuie să dezvolt în panoul de administrare? Dacă da, nu există evidențiere/auto-completare/intellisense și alte beneficii care să îmbunătățească dezvoltarea... iar plugin-urile pentru evidențiere pe care le-am văzut până acum sunt foarte slabe.

WordPress este calea unui lup singuratic? Ce abordare generală urmează dezvoltatorii WordPress?

php
2
Comentarii

Vorbești despre scrierea unei teme sau a unui plugin WordPress, sau despre lucrul la postări/pagini?

User User
22 oct. 2011 09:06:44

Cod Php, plugin-uri, etc.

User User
22 oct. 2011 09:13:55
Toate răspunsurile la întrebare 4
0

Modul în care Judah dezvoltă pentru WordPress este cu siguranță nu greșit – pur și simplu diferit de modul în care eu fac lucrurile. De asemenea, cele două linkuri pe care le-a furnizat sunt foarte bune. Postarea de blog pare demnă de citit, iar codex-ul este Biblia fiecărui dezvoltator WordPress.

Pentru a vă oferi mai multe opțiuni de analizat, iată perspectiva mea asupra dezvoltării WordPress:

IDE / mediu de codare: Dacă doriți să modificați, să zicem, stilul unui element, wp-admin ("panoul de control") va fi suficient. Cu toate acestea, pentru dezvoltarea serioasă de teme sau plugin-uri, cu siguranță nu este o opțiune. Prin urmare, ar trebui să rămâneți la IDE-ul preferat. Pentru completitudine, fiind utilizator *nix, aș folosi Komodo Edit pe Linux și Coda pe Mac. Totuși, indiferent dacă lucrați cu WordPress, un alt CMS sau codificați de la zero, alegerea IDE-ului este irelevantă – folosiți ceea ce vă simțiți confortabil. Una dintre cerințele mele de bază pentru un IDE – și v-aș recomanda să țineți cont și voi – este capacitatea acestuia de a încărca și salva fișiere direct pe server prin FTP. Devine obositor să salvați fișierele local și să le încărcați cu o a doua aplicație. Un alt criteriu important este evidențierea corectă a sintaxei pentru PHP, CSS, JS și HTML.

Unde să dezvoltați: După ce vă jucați puțin, s-ar putea să ajungeți la concluzia că vă simțiți mai confortabil să dezvoltați local – eu nu. Prefer să dezvolt fie direct pe serverul pe care voi face ulterior site-ul live, fie pe un server cu aceeași configurație (versiuni Apache și PHP, versiunea mySQL într-o măsură mai mică, și nu în ultimul rând: sistemul de operare). De aici importanța unui IDE cu capabilități integrate FTP. Dacă alegeți să dezvoltați local, asigurați-vă că mediul este cel puțin similar cu cel pe care veți implementa site-ul ulterior. Pentru modul meu de lucru, păstrez subdomenii de dezvoltare pe serverul meu care nu sunt accesibile publicului. Astfel, știu că site-ul se va comporta exact la fel când îl mut pentru a fi live.

Dezvoltarea de teme WordPress: A începe complet de la zero, adică cu un folder de temă gol și a crea fiecare fișier necesar singur, ar fi o misiune foarte consumatoare de timp și pentru începătorii în WordPress aproape imposibilă. Ca bază pentru scrierea primei voastre teme WordPress, aș recomanda cu căldură să descărcați tema Starkers dezvoltată de iconicul Elliot Jay Stocks. Starkers nu conține aproape deloc stilizare și nici markup semantic. Cu toate acestea, vine cu toate funcțiile și fișierele esențiale ale unei teme WordPress standard. Astăzi folosesc propriul meu șablon de temă minimal, practic Starkers cu o serie de modificări pe care altfel le-aș face pentru fiecare temă. Acel șablon îmi servește bine pentru că este ajustat la modul meu personal de a face lucrurile (și este lipsit de comentarii), dar ceea ce a făcut Elliot este să ofere punctul de plecare perfect pentru (aspirantul) designer de teme.

Ce altceva să faceți (dacă mergeți pe calea mea): Familiarizați-vă cu structura de bază a unei teme WordPress. Nu m-aș descurca fără un header.php și footer.php static care încadrează site-ul și între care se întâmplă toată magia. Știți ce ar trebui să fie în functions.php și de ce ar trebui să aveți unul. Aflați ce este bucla WordPress. Citiți articolele din codex despre Dezvoltarea Temelor și Bucla. Citiți-le din nou. Când înțelegeți cel puțin 75% din conținutul lor, începeți să disecați Starkers, înțelegeți-i structura. Dezvoltați de acolo. Ori de câte ori întâlniți o problemă, verificați mai întâi codex-ul (eu fac asta mai ales indirect – căutând pe Google termenii cheie urmați de "wordpress", adesea o pagină din codex va face parte din primele 5 rezultate), apoi întrebați în jur.

Încă o resursă: Acum doi ani, aș fi recomandat cu căldură vizionarea videoclipului instructiv în trei părți al lui Chris Coyier (de la css-tricks.com) despre crearea de teme WordPress. Având în vedere că este din începutul anului 2009, utilizează WordPress 2.7 (versiunea curentă fiind 3.2.1). Totuși, aș recomanda să-l verificați, este o serie de screencast-uri bune și ușor de urmărit, cu mult sfaturi care încă se aplică. Doar vizionați-l ținând cont că unele lucruri au evoluat de atunci. Primul videoclip din serie poate fi găsit aici, celelalte prin căutare pe Google, pe site sau prin modificarea URL-ului, respectiv.

22 oct. 2011 22:48:43
0

Presupun că ai putea încerca să dezvolți prin panoul de control, dar cred că ar fi puțin prea dificil. De asemenea, presupunând că nu ai dori ca site-ul să fie live în timp ce îl construiești, tot ar trebui să-l muți într-un director nou după ce finalizezi dezvoltarea.

Ori de câte ori dezvolt o temă de la zero, încep mai întâi cu HTML/CSS pentru toate paginile diferite și le fac să funcționeze local. Apoi fac o instalare locală de WordPress folosind MAMP sau XAMPP și transform markup-ul meu într-o temă (împărțindu-l în fișierele de șablon WordPress). Apoi ai mai multe opțiuni pentru a muta versiunea locală pe un server la distanță. De obicei, aș face o instalare nouă de WordPress pe serverul la distanță, aș șterge baza de date implicită și aș crea una nouă, aș înlocui folderul wp-content de pe server cu cel local (cel care conține tema pe care am terminat-o), aș face un export SQL al bazei de date locale și l-aș importa în noua bază de date creată pe serverul la distanță. Apoi conectezi instalarea WordPress la baza ta de date prin fișierul wp-config.

Apoi poți continua să folosești copia locală a site-ului pentru remedieri de bug-uri, dezvoltare continuă etc. și să încarci fișiere specifice pentru a implementa modificările.

Poți urma acest tutorial pentru a învăța despre crearea efectivă a fișierelor de temă: http://thethemefoundry.com/blog/html-wordpress

Cu siguranță ar trebui să consulți Codex-ul: http://codex.wordpress.org/ Este destul de extins, dar comunitatea WordPress este imensă și documentația este bună.

22 oct. 2011 09:26:37
0

1) Trebuie să rulez WordPress nu doar pe serverul meu, dar și local? Să editez fișierele în IDE/editor și să folosesc funcția "import/export" din WordPress pentru a sincroniza modificările? Cum ar lucra o echipă de developeri la asta? Dar despre VCS?

Cea mai comună metodă prin care o echipă de developeri lucrează la un proiect WordPress este utilizarea unui sistem de control al versiunilor precum SVN sau Git. Folosind un IDE precum PhpStorm, extrageți o copie pe mașina locală, asigurându-vă că setați directorul rădăcină al WordPress ca director rădăcină al proiectului.

Lucrați la fișiere și testați în mediul local de dezvoltare, apoi comiteți modificările înapoi în repository-ul principal de pe serverul de dezvoltare sau producție.

De asemenea, este foarte util să lucrați cu depanarea activată și să configurați Xdebug în IDE.

În wp-config.php:

define( 'WP_DEBUG', true);
define('SCRIPT_DEBUG', true);
define('CONCATENATE_SCRIPTS', false);
define( 'SAVEQUERIES', true);

2) Sau trebuie să dezvolt în panoul de administrare? Dacă da, nu există evidențiere/autocompletare/intellisense și alte beneficii care să vă ajute în dezvoltare... iar pluginurile pentru evidențiere pe care le-am văzut până acum sunt foarte slabe.

Editorul din panoul de administrare este în principal doar o facilitate și ar trebui folosit doar pentru modificări minore, dacă este cazul. Pe un server de producție nu ar trebui folosit deloc, iar eu prefer să-l dezactivez pentru a preveni probleme.

WordPress este destinat unui "lup singuratic"? Care este abordarea generală pe care o urmează dezvoltatorii WordPress?

WordPress este departe de a fi destinat unui "lup singuratic". Este un proiect open source mare cu o implicare comunitară imensă. Există o mulțime de resurse disponibile și multe comunități mai mici în care puteți participa.

25 oct. 2011 09:09:08
5
-5

Voi primi multă ură pentru acest răspuns, dar chiar cred că OP trebuie să învețe mai mult PHP și WP înainte să sară direct la codare pentru WP. Dacă ar fi făcut asta, aceste întrebări nu ar fi fost niciodată puse.

Îl aș evalua ca pe un începător autodidact PHP, care a învățat din tutoriale online și a decis peste noapte să codeze pentru WP, crezând că un răspuns pe forum îl va învăța. Nu este atât de simplu...

  1. Află cum funcționează WordPress folosindu-l efectiv și acordând atenție detaliilor
  2. Citește 1+ cărți despre PHP/WordPress (știu că costă bani, așa funcționează)
  3. Creează un mediu de dezvoltare local (configurează server, domenii, WordPress etc.)
  4. Folosește un IDE (NuSphere PhpEd pe Windows) pentru căutare rapidă a funcțiilor, deoarece cel mai bine înveți WordPress uitându-te la codul de bază
  5. Începe cu proiecte mici, învață cum funcționează plugin-urile/acțiunile/filtrele. Când le vei stăpâni, vei fi stăpân pe codarea în WP. Apoi, trebuie doar să cunoști funcțiile și filtrele specifice sau să știi cum să le găsești când este necesar (trebuie să ai un IDE)

Cunoștințele de codare care vin gratuit sunt de tipul celor care fac din codul tău un pericol pentru tine și pentru cei din jur. Cine ți-a spus că cunoștințele sunt gratuite, doar își elimina un competitor.

25 oct. 2011 02:43:52
Comentarii

Cine întreabă dacă plugin-urile ar trebui dezvoltate într-un editor JS (codename Dashboard), are cu adevărat probleme. De fapt, consider acest lucru ofensator ca dezvoltator. Toată lumea este programator în zilele noastre, crezând că e floare la ureche.

EarnestoDev EarnestoDev
25 oct. 2011 02:47:28

Mi se pare ofensator modul în care privești non-profesioniștii în general, precum și acest caz specific. De asemenea, este mărunt să crezi că cineva nu poate fi autodidact și că cunoștințele disponibile gratuit nu vor fi suficiente.

Johannes Pille Johannes Pille
25 oct. 2011 16:40:47

Vor fi suficiente pentru a-l face să devină un pericol pentru cei cu care/ pentru care va ajunge să lucreze. Învățarea online este ca și cum ai construi fără fundație (care reprezintă educația - nu școala, dar ceva organizat ca o carte). Tutorialele te învață soluții specifice, în timp ce cărțile te învață tot restul.

EarnestoDev EarnestoDev
25 oct. 2011 20:08:02

Am dat vot negativ acum câteva luni, voi argumenta acum: IMO, Internetul este ficțiunea (viziunea?) lui Jorge Luis Borges "Biblioteca din Babel" devenită realitate. ::: Cărți vs Tutoriale: Cred că domnul Johannes Gutenberg a avut și el probleme cu faptul că Manuscrisele erau considerate mai bune decât Cărțile Tipărite...

brasofilo brasofilo
21 ian. 2013 06:53:03

votul meu -1 ar fi fost un +1 dacă ai fi inclus doar punctele numerotate. Nu este imposibil să devii un dezvoltator php competent și de calitate folosind doar materiale disponibile gratuit; dar necesită un nivel ridicat de angajament, organizare și muncă.

Zach Lysobey Zach Lysobey
15 mar. 2013 19:09:07