Immer wieder kommt die Frage rein: Was nutzt du als Umgebung zum Entwickeln mit WordPress. Einige Anregungen möchte ich hier mal geben, wobei ich diese Vorlieben nicht als statisches Etwas sehe. Ich lebe, der Rechner mit mir und ebenso die Tools, die ich nutze.
Ebenso würde ich mich freuen, wenn mir der eine oder andere seine Vorlieben in diesem Segment kurz in den Kommentaren nennt - vielleicht findet sich das eine oder andere Schmankerl.
Plattform
Aktuell arbeite ich unter Windows und Linux, so dass sich meine Tools vorrangig auf beiden Plattformen anwenden lassen sollten. Dies ist mir wichtig, da ich eine heterogene Arbeitsumgebung für förderlich halte und es die Umgewöhnung am Client reduziert.
Browser
In meinem täglichen Umfeld der Webentwicklung arbeite ich vorrangig im Browser und im Editor, demzufolge sind diese beiden Werkzeuge für mich auch das Zentrum der Arbeit und bekommen den größten Zugriff.
Beim Browser vertraue ich auf Firefox, was vorrangig an den erstklassigen Erweiterungen liegt. In diesem Umfeld muss das Add on FireBug erwähnt werden, ohne das ich mir die Arbeit nicht mehr vorstellen könnte. Für dieses Add on gibt es wieder diverse Erweiterungen, die ich ebenso nützlich empfinde, dazu zählen vor allem YSlow, FirePHP und Page Speed.
Im weiteren nutze ich sehr gern das Add on im Firefox - Web Developer um diverse Inhalte einer Website zuzugreifen, sei es Cookies oder JavaScript auszuwerten, oder live CSS zu schreiben. Die Vielfalt ist sehr mächtig und damit ist das Add on ein wunderbares Werkzeug. Einige Punkte überschneiden sich mit dem FireBug - hier muss man einfach sehen, was man lieber mag.
In diesem Zusammenhang gibt es einige wunderbare Erweiterungen für den Browser, die die Arbeit erleichtern und ebenso die Synchronisation verschiedener Clients übernehmen kann. Daher kommt mein Firefox nicht nur mit diesen beiden Add ons aus, sondern es gibt einige wenige mehr, die aber in diesem Zusammenhang keinen erhöhten Wert haben.
Editor
Ein weiteres wichtiges Werkzeug ist der Editor, wobei ich hier auf UltraEdit setze. Ein Editor der leider meinem Grundgedanken zu Open Source nicht entspricht, der mir aber über die vielen Jahre am Rechner ans Herz gewachsen ist. Hier schätze ich vorrangig die Geschwindigkeit des Editors und die wunderbare Erweiterbarkeit mit eigenen Tools. So nutze ich das Parsen von PHP und das validieren von HTML und CSS direkt im Editor. Für das Parsen von CSS kommt CSSTidy zum Einsatz, auch online verfügbar. PHP parse ich via Webserver, der im Editor integriert ist und zusätzlich via PHPLint, auch in den zusätzlichen Werkzeugen des Editors integriert.
Unter Linux kann ich mich noch nicht ganz entscheiden und nutze dort Geany und NetBeans, wobei mir NetBeans eigentlich schon wieder zu träge ist und ich in Geany das eine oder andere vermisse. UE habe ich aktuell noch in der Test- und Betaphase und mal sehen, eventuell kann ich mich doch nicht von diesem Editor lösen.
Webserver & Tools
In diesem Zusammenhang gibt es zwei weitere wichtige Tools, die im Rahmen der Webentwicklung einsetze. Ich setze zum Arbeiten auf der lokalen Umgebung unter Windows XAMPP ein und unter Linux ist die lokale Webumgebung via Paketverwaltung installiert. Somit habe ich auf jedem Client eine Umgebung um mit PHP und mySQL zu arbeiten.
Wichtig bei der Entwicklung mit PHP ist für die Fehler- und Hinweisausgabe und das Debuggen. Unter PHP gibt es dabei diverse Ansätze und ich setze auf das Modul xDebug und eine entsprechende Ausgabe der Fehler und Hinweise in PHP.
Im weiteren schreibe ich in dem Zusammenhang die Errorlogs und werte diese aus. Als letztes Tool möchte ich auf Webgrind hinweisen, was als Webanwendung genutzt wird. Alternativ gibt es auch Desktop-Tools, die diese Arbeit erledigen, bspw. WinCacheGrind unter Windows. Damit lässt sich hervorragend das Profiling von xDebug auswerten und der eigene Code optimieren. Einen Beitrag zur Konfiguration und diverse hinweise habe ich bereits in der Vergangenheit erstellt.
FTP
Um die Entwicklung auf den Server zu bekommen, bedarf es meist einem Tool, welches das FTP Protokoll beherrscht und möglichst eine Oberfläche für die Verwaltung der Accounts liefert. Hierbei setze ich unter Windows auf den Total Commander, den man hervorragend an seine Bedürfnisse anpassen kann und wo ich vorrangig schätze, dass ich Tabs verschiedene Verbindungen öffnen kann. Unter Linux nutze ich für die Übertragung via FTP das Add on für den Firefox FireFTP. Hier gibt es diverse Tools, allerdings habe ich noch nie die Zeit gefunden, um mir diverse andere Tools anzusehen.
Für die Verbindung von SSH kommt PuTTY als Hilfe zum Einsatz und damit kann ich im Total Commander via SSH arbeiten. Unter Linux gibt es ebenso tolle Erweiterungen.
WordPress
Da ich vorrangig in und für WordPress entwickle, habe ich einige kleine Plugins in der Testumgebung aktiv, die mir die Sicht auf bestimmte Daten erleichtern, und die mir speziell für WordPress die Fehler speichern oder ausgeben. So teste ich beispielsweise auf nicht mehr aktuelle Funktionen von WordPress, um veraltetet Funktionen mit den neuen zu erkennen und zeitnah zu ersetzen. Eine kleine Liste mit kurzer Erläuterung von Plugins dazu, auch wenn ich nicht alle einsetze, so findet vielleicht der eine oder andere Gefallen.
Damit genug, auch wenn es sicher noch mehr gibt. Entscheidend aus meiner Sicht sind aber nicht die Plugins, sondern die Umgebung mit xDebug und die Settings, die WordPress im Standard in diesem Zusammenhang bietet. Daher kann ich nur empfehlen, folgende Zeilen in der wp-config.php der Umgebung zu haben.
/** Debugging WP */
define('WP_DEBUG', true); //enable the reporting of notices during development - E_ALL
define('WP_DEBUG_DISPLAY', true); //use the globally configured setting for display_errors and not force errors to be displayed
define('WP_DEBUG_LOG', true); //error logging to wp-content/debug.log
define('SCRIPT_DEBUG', true); //loads the development (non-minified) versions of all scripts and CSS and disables compression and concatenation,
define('E_DEPRECATED', false); //E_ALL & ~E_DEPRECATED & ~E_STRICT
define('AUTOSAVE_INTERVAL', '300'); // Autosave interval
define('SAVEQUERIES', true); // Analyse queries
define('WP_POST_REVISIONS', false);
Diese Definitionen machen die Arbeit mit WordPress einfach und es gibt viele Hinweise von WP zu einem sauberen Code und aktuellen Funktionen. Den Autosave-Intervall ändere ich nur dann auf kleine Werte, wenn ich diesem Segment arbeite, wenn ich also möglichst schnell das Script brauche.
Webzugriffe
Im Web gibt es eine Vielzahl von Tools, die nützlich sind - ich möchte mal kurz einige vorstellen, die ich oft nutze und auch damit meinen Dank an die Leute sagen, die diese Dienste bereit stellen.
- php.net - weil man nie schnell genug an Infos kommt, daher habe ich auch im Firefox eine Erweiterung für das interne Suchfeld, was direkt in den Funktionen von php.net sucht (kann gern genutzt werden, habe ich abgelegt)
- wpseek.com - die Suche zu WordPress, auch eine Sucherweiterung für Firefox steht zur Verfügung (@Oliver: einzig und allein - ich wünschte mir mehr Übersicht, weniger Design
)
- PHP Cross Reference of WordPress Source - weil ich manchmal so schneller bin als über den Editor
- bueltge.de - mein eigenes Blog
ist gestartet und meine Lösungen fest zu halten und zu teilen, ich nutze die Suche massiv und auch die gibt es als Browsererweiterung
Fazit
Um UpToDate zu bleiben, nutze ich viele Anwendungen, die ich hier auch genannt habe, via SVN - dies gilt für WordPress ebenso wie für die genannten Tools, wenn es den seitens des Entwicklers angeboten wird. Ebenso ist die Arbeit mit SVN unumgänglich, wenn man Plugins auf dem Server von WordPress ablegen will. Unter Windows (z.B. Tortoise) und Linux (z.B. RapidSVN) ist die Arbeit mit einem SVN kein Problem und es stehen ausreichend gute Tools zur Verfügung.
Ein kleines Ausblick meiner aktuellen Tools und vielleicht findet einer von Euch Anregungen und hat ebenso Anregungen für mich.
Vielen Dank für die Aufstellung. Ist eine große Hilfe für mich.
Super Zusammenstellung Frank, für mich als Laie der hin und wieder nur ein paar Schnipsel anpasst, ergänz, erweitert etc. reicht mir ein simpler Editor und Firebug - welches mir Kollege ocean90 zu Herzen gelegt hat. Als Editor verwende ich Notepad++, von dem du aber sicherlich schon gehört hast. Zur Zeit lese ich das Buch von Michael Jendryschik, welches mein Wissen zu XHTML und CSS vertiefen soll. Parallel zum Buch verläuft ein Tutorial, also quasi ein Projekt. Gehe ich ein solches Projekt an, so verwaltet ich es im PSPad. Tools können einem das Arbeiten sehr erleichtern, vielleicht sollte man von daher das Buch Webwork-Tools von WordPress-Kollege Vladimir Simovic (Perun) erwähnen. Gruß, ach1m.
Mir ist noch aufgefallen, dass der wpseek-Link ins Falsche führt.
@ach1m: danke, habe ich gefixt. Ja, kenne das Buch von Vlad, hatte ich hier auch schon mal vorgestellt. Notepad++ is tdef. ein toller Editor und empfehle ich gern, aber ich bin einfach den UE gewohnt, dass ist der wahre Grund -- nicht sein Speed und die Flexibilität.
Sehr interessant. Ich glaube, meine Umgebung muss ich auch noch einmal unter die Lupe nehmen. An so manche Probleme des Arbeitsumgebung gewöhnt man sich zu schnell oder man findet sich einfach mit ihnen ab. Dabei gibt es oft schon die eine oder andere Lösung.
Danke für den Einblick, ist immer interessant zu sehen wer was wie so nutzt.
Zum Editor fällt mir noch was ein. Ich hab lange den Komodo benutzt, bis irgendwann nur noch eine kostenfreie Lightversion und eine ziemlich teure Komplettedition angeboten wurde. Seitdem versuche ich mich mit mäßigem Erfolg an Eclipse zu gewöhnen.
Bin grosser Fan von Aptana und dem zugehoerigen PHP-Plugin.
Ist Opensource und man hat SVN/FTP/xDebug in einem.
Danke für die super Zusammenstellung. Ich persönlich arbeite am Mac aber besonders die "Webzugriffe" kann ich sehr gut gebrauchen!
Danke für die Auflistung der wp-config.php-Direktiven.
Echt eine super Zusammenstellung. Ich würde beim Editor jedoch auch zu Netbeans greifen, wenn ich in der Entwicklung bin und für kleinere Sachen würde ich notepad++ empfehlen. Schnell offen mit FTP Client und und und. Die FirePHP Erweiterung für WordPress war mir neu. Danke für den Tipp.
Vielen Vielen Dank!!!
überrascht das keine richtige IDE verwendet wird...
kann mich Mariusz nur anschließen, Apatana ist wirklich sehr gut. Und für den schnellen Editoreinsatz zwischendruch kommt Notepad++ ins Spiel, ansonsten: guter Beitrag.
Das passt zwar nicht ganz zum Thema aber vielleicht hat doch einer eine Idee. Ich suche so eine Art offline Oberfläche für mein WordPress. Da könnte man dann die Artikel in der Bahn schreiben und wenn man dann eine Internetverbindung hat, diesen Artikel einfach in seinem wordpress blog hochladen. Die Schwierigkeit wird wohl sein, dass die WordPress Neuerungen, wie tags, etc. auch unterstützt werden sollten. Vielleicht kennt wirklich jemand so ein tool.
Die gibt es, für die unetrschiedlichsten Betriebssysteme, da mal im Forum von WPD fragen oder im www suchen-
Ich kann Aptana (Erweiterung für Eclipse) als Entwicklungsumgebung für PHP sehr empfehlen
Lang, lang ist's her - Aber als HTML-Editor mit zahlreichen Möglichkeiten und der Option plugins einzubinden haben wir früher die Programme Phase 5 und Proton von Ulli Meybohm und Hans-Dieter Berretz genutzt. Die gibt's auch heute noch, und die funktionieren sogar noch.
Aber mittlerweile nutze ich in dem Bereich kaum noch Freeware. Man wird halt bequem im Alter
Auch für den Nicht-Entwickler interessant zu lesen. Da merke ich, wie weit ich von der eigenen Plugin-Entwicklung entfernt bin.
@ebook-blog - wenn es nur um das schreiben der Beiträge offline geht, da kann man ganz gut den Windows Live! Writer benutzen, weil er Entwürfe lokal auf der Platte speichert. Beim nächsten Mal mit Internet verbindung kannst du die Beiträge dann von der Platte hochladen. Da er sogar eine Offline-Vorschau mit WYSIWYG-Charakter bietet (im Gegensatz zu anderen reinen Editoren) nutze ich ihn ganz gerne. Ich schrieb hier:
http://www.petersplace.net/wordpress/archives/991
schon mal darüber.
Toller Post, ich kann das jetzt noch gar nicht ganz fassen was du alles geschrieben hast, aber werd das mal Schritt für Schritt durchgehen und schaun was ich davon auch bei mir anwenden sollte.
Danke für die ganzen Tipps! ich habe bis heute meine Probleme mit WordPress, aber schön langsam geht es voran und ich erfasse WP immer mehr und mehr. Vielen Dank!
Vielen Dank für die tolle Aufzählung. Da sind doch einige Tools dabei von denen ich noch garnichts gehört habe. Die muss ich unbedingt einmal testen, vielleicht kann ich dann ein paar kommerzielle Programme ausmustern. Nochmals vielen Dank.
Hallo Frank,
vielen Dank für diese Übersicht. Ich finde es immer spannend, zu erfahren, mit welchen Programmen und Tools so gearbeitet wird. Es sind einige Programme dabei, die ich mir mal näher ansehen werde.
Die Live Kommentar Vorschau hier gefällt mir übrigens auch sehr
.
Viele Grüße
Jan
Erstmal vielen Dank für deine Übersicht
Ich habe 2 IDE die ich recht gern nutze. Zum einen wäre da Netbeans. Hier finde ich die PHP-Unterstützung um einiges besser als bei eclipse. Eine smalle Variante wäre dann noch Geany das ich vor allem bei kleinen PHP-Skripten einsetze.
Schade ist das WordPress auf SVN setzt. Ich bevorzuge hier lieber GIT.
Viele Grüße
@Jens: Aktuell sitze ich testweise auf Aptana, da ich bei NetBeans einiges vermisse. Geany ist einfach super schnell. WordPress gibt es auch bei git: http://github.com/wordpress
Kleiner Tipp am Rande: Da TC ja leider kein SSH / SFTP beherrscht, hat sich in der Vergangenheit ein SSH-to-FTP-Relay unter Zuhilfename von Tunnelier als sehr hilfreich erwiesen. Immer, wenn ich also mal wieder gezwungen bin, auf Windows-Systemen rumzukrüppeln (richtig: Unter Windows fühle ich mich inzwischen wie ein frisch Querschnittsgelähmter), kommt diese Kombination - registrierter TC + Tunnelier - zum Einsatz
Unter Linux empfiehlt sich sshfs bzw. FUSE - damit kann man entfernte Ziele über SSH direkt als "Laufwerk" einhängen und mit diesem dann fast so arbeiten, als wäre es eine lokale Platte oder USB-Stöpsel.
cu, w0lf.
@fwolf: ssh geht mit einer kleinen Erweiterung problemlos, da gibt es ein Plugin für TC
Ist Aptana immer noch so .. slugish .. dank Eclipse-Basis von den Startzeiten etc. her? Das war bis dato mithin einer der Gründe, warum ich das trotz mehrfacher Anläufe nicht im Einsatz habe (der andere wichtigste Hauptgrund war und ist immer noch die vertrackte "Hotkey Customization"-Situation unter Eclipse .. *schauder*).
cu, w0lf.
@fwolf: unter Linux läuft Aptana toll, zu Windows kann ich nichts sagen, mein Windows Client schaft Aptana kaum.