WordPress-FehlerMeldungen von WordPress

Parse error in WordPress: Syntaxfehler finden und die Seite retten

„Parse error: syntax error“ bedeutet: PHP kann eine Datei nicht lesen, weil der Code falsch geschrieben ist. Meist wurde kurz vorher ein Schnipsel in die functions.php kopiert. Dabei fehlt ein Semikolon oder eine Klammer, oder es steht ein zweites „<?php“ mitten in der Datei. Die Meldung nennt Datei und Zeile. Öffne genau diese Datei per FTP oder im Dateimanager des Hosters und korrigiere die Stelle oder nimm den eingefügten Code wieder heraus. Über das Dashboard geht das meist nicht mehr, weil jede Seite abbricht.

So sieht die Meldung aus

  • Parse error: syntax error, unexpected token "<", expecting end of file
  • Parse error: syntax error, unexpected token "}", expecting "," or ";"
  • Parse error: syntax error, unexpected identifier "add_action"
  • Parse error: syntax error, unexpected '}', expecting ',' or ';'
  • Parse error: syntax error, unexpected end of file

Woran es liegt.

Semikolon oder Klammer fehlt

Jede PHP-Anweisung endet mit einem Semikolon, jede geöffnete Klammer braucht ihr Gegenstück. Fehlt eins davon, meldet PHP „unexpected“ und nennt das Zeichen, über das es gestolpert ist. Der eigentliche Fehler steht oft eine Zeile vor der genannten.

Zweites <?php beim Einfügen

Viele Anleitungen zeigen Schnipsel mit „<?php“ in der ersten Zeile. Die functions.php beginnt aber schon damit. Landet das Tag mitten in der Datei ein zweites Mal, meldet PHP ein unerwartetes „<“.

Typografische Anführungszeichen

Beim Kopieren aus Blogs, E-Mails oder Textprogrammen werden gerade Anführungszeichen gern zu geschwungenen. PHP versteht nur die geraden. Mit den anderen bricht der Code ab, je nach Stelle mit einem Parse error oder einem anderen fatalen Fehler.

Code für eine neuere PHP-Version

Ein Schnipsel nutzt eine Schreibweise, die die PHP-Version auf dem Server noch nicht kennt, etwa Pfeilfunktionen mit fn, die es erst ab PHP 7.4 gibt. Ältere Versionen melden dann einen Syntaxfehler, obwohl der Code an sich stimmt.

Unvollständig übertragene Datei

Bricht ein Upload per FTP oder ein Update mittendrin ab, endet die Datei mitten im Code. PHP meldet dann ein unerwartetes Dateiende oder eine Klammer, die nie geschlossen wurde.

So behebst Du den Fehler.

Leg vor jeder Änderung eine Sicherung von Dateien und Datenbank an. Geh die Schritte der Reihe nach durch und prüf nach jedem, ob die Seite wieder lädt.

  1. Datei und Zeile aus der Meldung notieren

    Am Ende der Meldung steht „in /pfad/zur/datei.php on line 42“. Dort hat PHP aufgegeben. Nennt der Pfad functions.php, liegt der Fehler im Theme, bei einem Ordner unter wp-content/plugins im jeweiligen Plugin. Zeigt die Seite nur den Hinweis auf einen kritischen Fehler, findest Du Datei und Zeile im debug.log oder in der Nachricht, die WordPress an die Admin-Adresse schickt.

  2. Die Datei vorher sichern

    Lade die betroffene Datei per FTP oder Dateimanager auf Deinen Rechner, bevor Du sie änderst. So kommst Du jederzeit zum jetzigen Stand zurück. Bearbeite sie in einem Code-Editor wie Visual Studio Code, nicht in einem Textprogramm wie Word.

  3. Die letzte Änderung zurücknehmen

    Hast Du gerade einen Schnipsel eingefügt, entferne ihn vollständig und lade die Datei wieder hoch. Lädt die Seite danach, war er der Auslöser. Prüfe ihn dann in Ruhe und füge ihn korrigiert erneut ein.

  4. Die Stelle gezielt korrigieren

    Spring im Editor zur genannten Zeile und lies die Zeile davor mit. Typisch sind ein fehlendes Semikolon am Zeilenende, eine offene geschweifte Klammer, ein zweites „<?php“ oder geschwungene Anführungszeichen. Ein Editor mit PHP-Hervorhebung färbt die kaputte Stelle meist auffällig ein.

    functions.php
    // Falsch: Semikolon fehlt, PHP meldet erst die nächste Zeile
    add_filter( 'excerpt_length', 'meine_auszugslaenge' )
    add_action( 'init', 'meine_funktion' );
    
    // Richtig
    add_filter( 'excerpt_length', 'meine_auszugslaenge' );
    add_action( 'init', 'meine_funktion' );
  5. Syntax per SSH prüfen

    Mit SSH-Zugang prüft PHP eine Datei, ohne sie auszuführen. Die Ausgabe nennt Zeile und Art des Fehlers oder meldet „No syntax errors detected“. So testest Du eine korrigierte Datei, bevor sie die Seite erneut lahmlegt.

    Terminal (SSH)
    php -l wp-content/themes/dein-theme/functions.php
  6. Beschädigte Dateien frisch ersetzen

    Ist eine Datei durch einen abgebrochenen Upload oder ein halbes Update beschädigt, lade das Theme oder Plugin neu herunter und ersetze den Ordner per FTP. Eigene Änderungen am Eltern-Theme gehen dabei verloren. Sie gehören deshalb ins Child-Theme.

  7. Entwickler einbeziehen

    Findest Du den Fehler nicht, schick dem Entwickler des Themes oder Plugins die vollständige Meldung samt Zeilennummer und PHP-Version. Bei eigenem Code hilft oft schon der Blick einer zweiten Person, die PHP lesen kann.

Zuletzt geprüft am 25. September 2026.

So kommt er nicht wieder.

  • PHP-Dateien nur ändern, wenn Du per FTP an sie herankommst und eine Kopie des alten Stands hast.
  • Eigene Schnipsel ins Child-Theme oder in ein kleines eigenes Plugin legen, nie ins Eltern-Theme.
  • Kopierten Code vor dem Einfügen im Editor ansehen und auf gerade Anführungszeichen und Semikolons achten.
  • Neue Schnipsel zuerst auf einer Staging-Kopie der Website ausprobieren.

Fragen zu Parse error: syntax error

Wie behebe ich einen Parse error in WordPress?
Öffne die Datei aus der Meldung per FTP, geh zur genannten Zeile und prüfe sie zusammen mit der Zeile davor. Fehlt ein Semikolon oder eine Klammer, ergänze es. Hast Du gerade Code eingefügt, nimm ihn wieder heraus.
Warum komme ich nach dem Fehler nicht mehr ins Dashboard?
WordPress lädt die functions.php des aktiven Themes auch im Admin-Bereich. Kann PHP sie nicht lesen, bricht jede Seite ab. Der Weg führt über FTP, den Dateimanager des Hosters oder den Link zum Wiederherstellungsmodus aus der Nachricht von WordPress.
Was bedeutet „unexpected end of file“?
PHP ist am Ende der Datei angekommen, obwohl noch etwas offen war, meist eine geschweifte Klammer oder ein Anführungszeichen. Neuere PHP-Versionen schreiben stattdessen „Unclosed '{' on line …“ und nennen die Zeile, in der die Klammer aufgeht.
Sind durch den Parse error Inhalte verloren?
Nein. Die Datenbank mit Beiträgen und Einstellungen bleibt unberührt. Nur die eine Datei enthält fehlerhaften Code. Sobald sie korrigiert ist, läuft die Seite wie vorher.

Lieber eine Website, die einfach läuft?

Wir bauen Websites, die schnell laden und ohne Update-Stress laufen. Oder wir übernehmen Deine WordPress-Seite samt Pflege. Erst Dein Paket, dann ein Termin per Video.

Kevin Baum im Videocall an seinem Schreibtisch, im Hintergrund eine Holzlattenwand mit farbigem Licht.

Erst Dein Paket, dann der Termin

Im Preisrechner tippst Du an, was Dich bremst. Du siehst sofort Dein Paket mit Preisspanne. Danach wählst Du direkt einen Termin, das Gespräch läuft per Video.

Dein Preis in 2 Minuten