Skip to content

Alles für WordPress, Webentwicklung — und mehr

⚙️ PHP CodeSniffer in PhpStorm mit WordPress-Codierungsstandards einrichten

⚙️ PHP CodeSniffer in PhpStorm mit WordPress-Codierungsstandards einrichten

Code für WordPress schreiben und Ihr Teamkollege bittet Sie bei jedem Code-Review, „Leerzeichen und Einrückungen zu bereinigen"? Oder Ihre Website stürzt nach einem Plugin-Update ab und Sie finden den Fehler nicht in den Logs, weil der Code ohne jeden einheitlichen Standard geschrieben wurde?

Dieses Szenario kennt jeder, der WordPress im Team entwickelt. Unterschiedliche Formatierungsgewohnheiten, manche verwenden Yoda-Bedingungen, andere nicht, und an manchen Stellen fehlt das Output Escaping.

PHP CodeSniffer löst das automatisch: Es prüft Ihren Code direkt im Editor gegen die WordPress Coding Standards, markiert Verstöße und kann sie mit einem einzigen Befehl beheben. Nachfolgend eine Einrichtungsanleitung von Grund auf für PhpStorm 2026.

💡 Kurzüberblick:

  • Installieren Sie PHP CodeSniffer und die WordPress Coding Standards via Composer, entweder in Ihrem Projekt oder global
  • Hinterlegen Sie den Pfad zu phpcs in der Konfiguration und fügen Sie den WordPress-Standard hinzu
  • Konfigurieren Sie einen entfernten PHP-Interpreter, wenn Sie über Vagrant, Docker oder SSH arbeiten
  • Aktivieren Sie die Inspektion „PHP CodeSniffer Validation" in PhpStorm, und Fehler werden direkt beim Tippen hervorgehoben
  • Richten Sie die automatische Formatierung über PHP Code Beautifier and Fixer ein, um Code mit einem einzigen Befehl zu korrigieren

Schritt-für-Schritt-Video auf Englisch (gleiche Schritte wie im Text):

Schritt 1: Entfernten PHP-Interpreter konfigurieren

Wenn Sie mit lokalem PHP entwickeln (XAMPP, MAMP, Local, eingebauter Server), überspringen Sie diesen Schritt. Für Vagrant, Docker oder einen entfernten Server via SSH müssen Sie den Interpreter explizit angeben.

Öffnen Sie Einstellungen → PHP (Strg+Alt+S), klicken Sie auf […] neben CLI-Interpreter und wählen Sie SSH Credentials oder Docker Compose.

Konfigurationsfenster für entfernten PHP-Interpreter in PhpStorm

Füllen Sie Folgendes aus:

  • Host-IP-Adresse, dieselbe, die für die Website verwendet wird (ping example.dev hilft)
  • vagrant als Benutzername und Passwort (bei Verwendung von Vagrant)
  • /usr/bin/php, Pfad zur ausführbaren PHP-Datei auf dem Server

Speichern Sie und wählen Sie den erstellten Interpreter aus der Liste:

Auswahl des konfigurierten PHP-Interpreters aus der PhpStorm-Liste

PhpStorm verwendet dieses spezifische PHP, um CodeSniffer und andere Code-Qualitätswerkzeuge auszuführen.

Schritt 2: PHP CodeSniffer via Composer installieren

Der zuverlässigste Ansatz ist, PHPCS als Projektabhängigkeit zu installieren. Fügen Sie Ihrer composer.json hinzu:

1{
2 "require-dev": {
3 "squizlabs/php_codesniffer": "^3.10"
4 }
5}

Führen Sie dann composer install aus. PhpStorm erkennt phpcs und phpcbf in vendor/bin automatisch, sodass Sie keine Pfade manuell setzen müssen.

Für eine globale Installation (wenn Sie es projektübergreifend benötigen):

1composer global require "squizlabs/php_codesniffer=*"

Überprüfen Sie: Die ausführbare Datei phpcs sollte sich unter ~/.composer/vendor/bin/ (Linux/Mac) oder %APPDATA%/Composer/vendor/bin/ (Windows) befinden.

Schritt 3: WordPress Coding Standards installieren

WPCS ist ein Satz von Regeln (Sniffs) für PHPCS, der speziell die Einhaltung der WordPress-Standards prüft: Output Escaping, Yoda Conditions, Funktionspräfixe und alles Weitere aus dem WordPress Coding Standards Handbook.

Via Composer in Ihrem Projekt:

1composer require --dev wp-coding-standards/wpcs:"^3.0"

Oder global (die bewährte Methode):

1composer create-project wp-coding-standards/wpcs:dev-master --no-dev

Stellen Sie sicher, dass der Standard unter ~/.composer/wpcs/ oder vendor/wp-coding-standards/wpcs/ erscheint.

Schritt 4: Pfad zum Standard in der PHPCS-Konfiguration festlegen

Navigieren Sie in den phpcs-Ordner und geben Sie an, wo sich die installierten Standards befinden:

1cd ~/.composer/vendor/bin
2phpcs --config-set installed_paths ~/.composer/wpcs

Prüfen Sie, ob WordPress in der Liste der verfügbaren Standards auftaucht:

1phpcs -i

Die Ausgabe sollte vier Standards zeigen: WordPress, WordPress-Core, WordPress-Docs und WordPress-Extra.

Schritt 5: phpcs zum PATH hinzufügen

Öffnen Sie ~/.bash_profile (oder ~/.zshrc für ZSH) und fügen Sie die Zeile hinzu:

1PATH=$PATH:~/.composer/vendor/bin

Starten Sie Ihr Terminal neu oder führen Sie source ~/.bash_profile aus. Der Befehl phpcs steht nun aus jedem Ordner zur Verfügung.

Testen Sie ihn an einer beliebigen Theme- oder Plugin-Datei:

1cd wp-content/themes/your-theme
2phpcs --standard=WordPress functions.php

Eine erfolgreiche Ausgabe sieht so aus:

Ergebnisse der PHP-CodeSniffer-Codeüberprüfung im Terminal

Fehler werden in zwei Stufen unterteilt: ERROR für harte Verstöße und WARNING für Empfehlungen. Jede Zeile enthält die Regelnummer und eine Beschreibung des Problems.

Schritt 6: PHP CodeSniffer in PhpStorm konfigurieren

Öffnen Sie Einstellungen → PHP → Qualitätswerkzeuge → PHP_CodeSniffer (Strg+Alt+S).

Wenn Sie via Composer in Ihrem Projekt installiert haben, erkennt PhpStorm phpcs aus vendor/bin automatisch. Bei globaler Installation klicken Sie auf […] neben Konfiguration und geben den Pfad zur ausführbaren Datei an: ~/.composer/vendor/bin/phpcs.

Wählen Sie den PHP-Interpreter aus der Liste, denselben, den Sie in Schritt 1 konfiguriert haben.

Schritt 7: Inspektion „PHP CodeSniffer Validation" aktivieren

Gehen Sie zu Einstellungen → Editor → Inspektionen, klappen Sie PHP → Qualitätswerkzeuge auf und aktivieren Sie PHP_CodeSniffer validation.

Aktivierung der PHP-CodeSniffer-Validierungsprüfung in den PhpStorm-Einstellungen

Wählen Sie im Dropdown-Menü Coding standard den Eintrag WordPress. Speichern Sie die Einstellungen.

Ab diesem Zeitpunkt prüft PhpStorm geöffnete PHP-Dateien in Echtzeit. Verstöße werden mit wellenförmigen Unterstreichungen hervorgehoben, genau wie reguläre IDE-Fehler. Fahren Sie mit der Maus darüber, erscheint ein Tooltip mit einer Beschreibung: was falsch ist und wie Sie es beheben können.

Schritt 8: Prüfen, ob es funktioniert

Erstellen oder öffnen Sie eine beliebige Theme-PHP-Datei und schreiben Sie bewusst nicht standardkonformen Code:

1if(true){echo 'Spaces? Never heard of them';}

PhpStorm unterstreicht die Zeile: fehlende Leerzeichen nach if, um geschweifte Klammern und innerhalb der Bedingung. Fahren Sie mit dem Cursor darüber und Sie sehen den Fehlertext sowie die WordPress-Regelnummer.

Schritt 9: Automatische Korrektur mit PHP Code Beautifier and Fixer einrichten

Sie müssen nicht jeden Verstoß manuell beheben. PHP Code Beautifier and Fixer (phpcbf) wird zusammen mit PHPCS installiert und kann Code automatisch gemäß dem gewählten Standard korrigieren.

Öffnen Sie Settings → PHP → Quality Tools, wählen Sie im Abschnitt External Formatters den Eintrag PHP Code Beautifier and Fixer. Wenn Sie nun Code → Reformat Code (Strg+Alt+L / Cmd+Option+L) aufrufen, richtet PhpStorm nicht nur die Einrückung mit dem eigenen Formatierer aus, sondern wendet auch die WordPress-Regeln via phpcbf an.

Konfigurieren Sie zusätzlich den WordPress-Codestil für den integrierten Formatierer: Settings → Editor → Code Style → PHP → Set From → Predefined Style → WordPress. So arbeiten beide Werkzeuge in dieselbe Richtung und geraten nicht in Konflikt.

Schritt 10: Vorgehen bei neuen Projekten

Für jedes neue WordPress-Projekt wiederholen Sie einfach Schritt 1 (Interpreter, falls remote), Schritt 6 (phpcs in den Einstellungen festlegen) und Schritt 7 (Inspektion aktivieren). Nutzen Sie Composer in Ihrem Projekt, sind die Schritte 2 bis 4 mit einer einzigen Zeile abgedeckt: composer require --dev wp-coding-standards/wpcs.

⁉️🤔 Häufig gestellte Fragen

Was ist der Unterschied zwischen WordPress, WordPress-Core, WordPress-Docs und WordPress-Extra?

WordPress ist der Basissatz aller Regeln außer der Dokumentation. WordPress-Core enthält nur Regeln aus dem offiziellen Coding-Leitfaden (Einrückung, Benennung, Yoda-Bedingungen). WordPress-Extra ergänzt Sicherheitsprüfungen: Ausgabe-Escaping, Validierung von Eingabedaten. WordPress-Docs prüft Standards zur Code-Dokumentation (PHPDoc). Verwenden Sie in der Praxis WordPress, da es Core und Extra einschließt.

PhpStorm erkennt phpcs nach der Installation nicht. Was kann ich tun?

Prüfen Sie, ob der Ordner vendor/bin (oder ~/.composer/vendor/bin) im PATH enthalten ist und die ausführbare Datei phpcs enthält. Öffnen Sie in PhpStorm Einstellungen → PHP → Qualitätswerkzeuge → PHP_CodeSniffer, klicken Sie auf […] und geben Sie den Pfad zu phpcs manuell an. Nach einem Wechsel des Interpreters oder einer Neuinstallation von Abhängigkeiten müssen Sie die Konfiguration möglicherweise über die Schaltfläche Reset im selben Fenster zurücksetzen.

Kann ich PHPCS ohne Composer verwenden, indem ich einfach das phar-Archiv herunterlade?

Ja, aber wir empfehlen es nicht. Bei der Installation via Composer erkennt PhpStorm phpcs, phpcbf und alle registrierten Standards automatisch. Mit dem phar-Archiv müssen Sie die Pfade manuell setzen und Updates separat verfolgen. Für die Team-Zusammenarbeit legt eine Composer-Abhängigkeit in composer.json die Version fest, sodass alle Entwickler denselben Regelsatz haben.

Wie schließe ich bestimmte Dateien oder Ordner von der Prüfung aus?

Erstellen Sie eine phpcs.xml-Datei im Projektstammverzeichnis. Sie können Verzeichnisse ausschließen (<exclude-pattern>vendor/*</exclude-pattern>), den Standard festlegen und die Schwere einzelner Regeln ändern. PhpStorm erkennt diese Datei automatisch, wenn sie sich im Projektstammverzeichnis befindet und phpcs.xml oder phpcs.xml.dist heißt.

Warum bemängelt PHPCS wp_redirect() ohne exit?

Der WordPress-Standard verlangt exit oder wp_die() nach jeder Weiterleitung: wp_redirect() setzt nur den Header, stoppt aber nicht die Skriptausführung. Ohne exit läuft Code nach der Weiterleitung weiter, was ein Sicherheitsrisiko darstellt. Korrekte Verwendung: wp_redirect( home_url() ); exit;.

Was tun, wenn Ihre Codebasis bereits groß ist und Sie Standards gerade erst einführen

PHPCS auf ein Projekt mit Tausenden von Verstößen loszulassen, ist ein sicherer Weg, Ihr Team zu demotivieren. Fangen Sie klein an: Beheben Sie kritische Fehler (Error, nicht Warning) mit phpcbf und senken Sie dann schrittweise die Schwelle. Fügen Sie eine phpcs.xml mit Ausschlüssen für Legacy-Code hinzu und aktivieren Sie monatlich eine neue Regel nach der anderen.

Hier ein Schritt-für-Schritt-Plan zur Einführung von Standards in einem laufenden Projekt:

  • Führen Sie phpcs --standard=WordPress --report=summary aus, um die Gesamtzahl der Fehler zu sehen.
  • Beheben Sie automatisch alles Mögliche: phpcbf --standard=WordPress .
  • Sortieren Sie die verbleibenden Fehler nach Schweregrad und gehen Sie zuerst die kritischen an.
  • Fügen Sie die Prüfung in die CI ein (GitHub Actions, GitLab CI): Lassen Sie den Build bei neuen Verstößen in Pull Requests fehlschlagen.

Beginnen Sie mit einem composer require --dev wp-coding-standards/wpcs in einem Projekt. Nach einer Woche hat sich das Team an die Hervorhebungen gewöhnt. Nach einem Monat ist sauberer Code selbstverständlich. Welchen Coding-Standard verwenden Sie? Lassen Sie es uns in den Kommentaren wissen.