it-swarm-eu.dev

Jaký proces používáte pro vývoj WordPressu?

Mám zájem o to, jak ostatní lidé vyvíjejí témata a pluginy pro WordPress. Pro mě, editor v prohlížeči v panelu administrátora to neřeže. V současné době používám pouze IDE s PHP pluginem (NetBeans), stahování mého vývojového webového adresáře z mého serveru, editaci v něm, tlačení nahoru a testování. migrace přes žít.

Hledám, jak jiní lidé používají své nástroje ke správě pracovních postupů pro vývoj, testování a nasazení motivů, pluginů a testování nejnovějších verzí WordPressu proti nim dříve, než budou žít.

Udělal jsem z toho komunitní wiki, aby tam mohli ostatní lidé sdílet vývojový proces. Neočekávám, že zde najdeme jedinečnou správnou odpověď - váš proces je váš vlastní, a já bych nečekal, co děláte, abyste mohli pracovat jen pro sebe nebo pro někoho jiného. Mám jen zájem o zlepšení své schopnosti vyvíjet pluginy a témata tím, že uvidím, co funguje nebo nefunguje pro jiné lidi.

Další otázka zde diskutuje o konkrétních softwarových nástrojích na podporu rozvoje WordPressu . Hledám zde další proces a metodologii, která může být použita nezávisle na nástrojích, s výjimkou určitých úkolů, které mohou být splněny pouze v určité skupině nástrojů.

37
Thomas Owens

Pro záznam jsem hlavně dělat celé webové stránky a pluginy, a nasadit je. Můj pracovní postup je velmi ruby- a git-heavy.

Chcete-li začít s novým projektem, mám skript Shell, který se postará o celou činnost nastavování nového vhostu a kontrolu nejnovějšího tagu WordPressu (z vlastního git repozitáře, který sleduje svn).

Základní tvar celého webu je git repsotory na wp-content. Obsahuje soubor Capfile (Makefile) a konfigurační soubor YAML, které společně zajišťují nasazení ( http://github.com/dxw/wp-capistrano ). Také uvnitř tohoto repozitáře přidávám téma a moduly plug-in jako git sub-moduly (ano, udržujeme git repozitáře i pro pluginy třetích stran - rádi používáme nejnovější verzi, kterou jsme osobně testovali).

Pro téma mám nástroj/framework pro generování kódu ( github.com/dxw/wp-generate ). Znamená to méně přemýšlení o tom, kam by měl kód jít, a má přirozený způsob oddělení mezi pohledem a modelem/řadičem.

Při psaní pluginů používám okurku/webrat, abych provedl vývoj řízený testem ( github.com/dxw/cucumber-wordpress ).

A pro migraci vývojových databází do výroby je to obvykle jen případ kopírování výpisu (WP_SITEURL a WP_HOME nastavuje capistrano na inscenačních/produkčních strojích, takže žádné vyhledávání/nahrazování).

Nedovedu si představit, kolik hodin jsem s těmito skripty uložil.

20
tomdxw

@Thomas Owens Tato otázka se poněkud překrývá a duplikuje otázku " Software pro vývoj WordPress/plugin vývoj? ." Nejste si jisti, zda bychom měli zavřít, ale zdá se, že je to trochu jiné zaměření. Tak...

Mac OS X

Zde je moje základní sada nástrojů právě pro Max OS X (vždy hledají lepší.) Poznámka: Zkoušel jsem NetBeans a vzdal se na něm. Příliš pomalé a příliš málo funkcí.

Windows Vista

Když jsem byl ve Windows Vista moje základní sada nástrojů byla:

Nasazení/migrace dat do přepínacích domén

Nejste si jisti, zda je to přesně to, co hledáte, ale vyvíjím plugin pro usnadnění migrací mezi lokálním serverem dev, testovacím serverem a serverem nasazení. Napsal jsem o tom zde:

Snad to pomůže

-Mike

6
MikeSchinkel

Toto je odpověď pracovního postupu, která není specifická pro IDE nebo plugin.

Řešení, které funguje opravdu dobře pro vývoj pluginů, je začít s lokálním webovým serverem Apache s každou variantou wordpressu instalovanou v podsložce.

V samostatném umístění mimo kořen místního serveru uložte své pracovní kopie aplikace wordpress plugin/theme. Vytvořte symbolický odkaz na příslušný trunk/tag/branch ve složce/wp-content/plugins každé varianty wordpressu.

Při úpravách pluginu ve vašem IDE provedených změnách bude zřejmě zastoupen v každé instalaci programu wordpress, takže bude snadné otestovat více variant wordpressu.

V podstatě můžete mít kartu prohlížeče otevřené pro každou místní variantu wordpress a otestovat každou z nich při práci na jediném projektu a jeden soubor základny.

Pomocí IDE, které podporuje SVN & FTP, stačí upravit pracovní kopii a potvrdit vaše změny zpět do úložiště.

Jako IDE Coda to pro mě dělá, ale stejně jako NetBeans a Eclipse.

Jakmile budete spokojeni s tím, že váš plugin funguje a tyto změny jste uložili do svého úložiště, můžete otevřít svůj program wordpress a publikovat změněný plugin přímo do svého živého webu.

5
leetagg

Mám relativně nekomplikované nastavení, které se vyvinulo od začátku mé současné práce ~ před 2,5 lety.

Rozvíjející se

Dělám veškerý svůj vývoj přes SSH, pomocí Vim uvnitř GNU obrazovky . Vim pluginy zahrnují:

Vertikální rozdělení a :set hidden jsou nezbytné. Také preferuji 256 barevný terminál ( iTerm na Mac OS X) s barevným schématem railscasts .

Pomalu jsme také upravovali dBug tak, aby vyhovovaly našim potřebám. Pěkná náhrada print_r() a var_dump() když víte, že proměnná je pole nebo objekt.

Nasazení

V současné době nepracuji s mnoha veřejnými pluginy/tématy, takže netestuji kompatibilitu pluginu s více verzemi WordPressu. I kód ​​na dev server a přesunout tento kód do výroby přes Subversion.

3
Annika Backstrom

WordPress Proces vývoje témat

  • Převod Mock Flow drátového rámu na základní XHTML a CSS

  • Zapojte XHTML do souboru šablony master.php a převeďte jej na tagy Template a WP

  • Rozdělte master.php do různých souborů šablon, např .: header.php, index.php, sidebar.php a footer.php

  • Napište všechny vlastní dotazy a funkce, které mohou být potřebné

  • Připojte rozložení CSS a přidejte div {outline:1px solid red;}, aby vám pomohl vyladit layout4.

  • Upload téma složku do WordPress pro testování a další vývoj

Vývojové nástroje pro WordPress

  • Aptana Studio WorkPlace editor kódu s vestavěným FTP

  • Tmel

  • dual 1920 x 1200 monitor s otevřeným prohlížečem na jednom a editoru kódu na straně druhé

  • Wacom Intuis 4 tableta

  • Firebug s rychlostí Yslow a Google Page

3
Chris_O

Můj pracovní postup je velmi jednoduchý. Držím krok se 4 prostředími. Testování, vývoj, etapa a výroba.

Pracovní postup

Používám git pro kontrolu verzí; Ignoruji soubor wp-config.php, aby tento soubor nebyl přepsán jako I Push a táhněte napříč různými místy. Jako veřejný/centrální repozitář pro ostatní používám nerozhodně Push and pull.

Zdá se, že to funguje docela dobře. Budu se dopustit tak často, jak si budu pamatovat, když pracuji na Testování. Přinejmenším jednou denně, ne-li více, synchronizuji se s nezvládnutým a mají vývojový server táhnout změny. Snažím se nedělat žádnou přímou práci na serveru, takže jsem hlavně tahal změny. Pokud došlo k významným změnám v databázi (nové pluginy, aktualizovaný obsah, atd.), Pak jsem je vypsal z mého Testování; vytvořte zálohu Vývoj a importujte výpis.

Používám stejný postup pro Staging. Staging sedí na stejném serveru jako výroba je dvojitá kontrola polského a ujistěte se, že všechna nastavení a moduly pracují na produkčním serveru. Když jsem připraven, zálohuji všechny produkční soubory a databázi a kopíruji soubory a databázi ze stagingu.

Vzhledem k tomu, že wp-config.php není v programu git, je velmi jednoduché tisknout a tahat věci kolem sebe. Při přechodu na produkci ze stagingu kopíruji soubory a nepoužívám git, takže se musím ujistit, že wp-config.php je správný.

Zeptal jsem se otázka , a já se podívám do použití tohoto pluginu.

Také jsem přemýšlel o použití Capistrano; a vytvoření velmi podrobného migračního skriptu, který bude procházet a zpracovávat všechny zálohy/migrace souborů a databází a také aktualizovat cesty souborů a adres URL.

Nástroje

  • Textmate pro mého editora, i když začínám používat MacVim. Používám vim, když na Linuxu.
  • Sequel Pro pro manipulaci s databázemi. Pokud se s ním nemohu připojit, budu používat PHPMyAdmin
  • Přenos na FTP, pokud to budu potřebovat.
  • git pro kontrolu revizí. Většinou příkazový řádek, i když jsem používal klienta v Textmate a GittiApp.
3
Ryan Gibbons

Jedna věc, která mi pomáhá (zejména při práci na více klientských tématech), používá WordPress Multisite instalaci na mém serveru dev. Tímto způsobem mohu mít tolik otevřených pracovních míst, kolik je potřeba, a nemám strach o klienta A, který vidí téma klienta B. Pár to s komplexní balíček ukázkového obsahu, který jsem nahrát při každém vytvoření nového webu, a máte úžasný systém dev.

1
Keith S.

Dělám z hackingu na místě na serveru ve střevech životního systému na strukturovanější dev/test/fázi/životní cyklus pomocí systémů pro řízení verzí a automatizovaných testů. Záleží jen na práci.

Kromě toho jsem se hlásí chyby zpět do projektu wordpress, když jsem nad nimi běží.

Pro vývoj zásuvných modulů se snažím nepřekonfigurovat kolo po celou dobu, takže buduji nové, založené na existujících principech a vzorech.

0
hakre

Zde je můj pracovní postup:

  • Začnu vytvořením adresáře projektu, jakmile dostanu požadavky a návrhy webových stránek.
  • verze Static a složky theme/plugin v Dynamic složkách pomocí Git.
  • vytvořit virtuální hostitele projektu. Dodržuji tuto úmluvu:

    http://project1.dev/

    http://project1.static.dev (volitelně)

  • Obvykle sleduji tuto organizaci složek:

    Projects
           Project1Name
                       Docs //Requirements docs, emails, other related documents. 
                            //This directory may contain directories with  names as dates
                            //(e.g 2014-01-01) to stay super organized :)    
                       Designs //All PSDs go here  
                       Data  //Database backup for the project,
                       Site
                           Dynamic //WordPress generally
                           Static //I don't always create a static version. I did a couple  
                                  //of times in the past. I use the same structure inside
                                  //the theme or plugin I'm developing
                                 js
                                 css
                                 img
    
           Project2Name and so on ...
    

Jsem si vědom (a), že ještě nepoužívám nástroj build na každodenní bázi, což mě činí špatným.

Ale používám ANT sestavovací nástroj pro můj projekt Sprite2CSS spojený s několika skripty PHP pro spotřebu ANT.

Nástroje


Ať už jsem ve Windows nebo Ubuntu, používám následující:

  • Netbeans + SublimeText2 + Notepad ++
  • WAMP - (PHP)
  • FakeMail
  • Git
  • Chrome a DevTools + Firefox s Firebug a Safari + IE pro testování
  • Ylowe!
  • Vestavěný FTP Filezilla/WinSCP/NB
  • Cygwin + Příkazový řádek
  • Skladatel
  • NodeJS + NPM
  • SQLYog Community Edition + PHPMyAdmin

Jsem otevřen návrhům na zlepšení pracovního postupu.

0
Junaid Qadir

Pracuji na Windows s Denver , FileZilla, Notepad ++, Firefox Firebug a dalšími inspektory (odkazy byly výše), cPanel a dbForge Studio for MySQL

0