PHP 7 & WordPress: unexpected ‘new’ (T_NEW) BEHEBEN

Hi,

unexpected-php-7-lösung

kurz nach dem ich zum viel schnelleren PHP 7 gewechselt bin, fing mein WordPress an, Fehler auszuspucken. Diese waren jedoch ausschließlich auf ein älteres Plugin bezogen, welches ich nicht aufgeben möchte. Es lohnt sich also vor dem Upgrade alle WordPress Plugins sicherheitshalber zu deaktvieren. Der genaue Fehler lautete:

Plugin could not be activated because it triggered a fatal error.







Parse error: syntax error, unexpected ‘new’ (T_NEW) in /var/www/vhosts/wp-content/plugins/smilies-themer/smilies-themer.php on line 80

Dieser Fehler wird angezeigt, da in PHP 7 Klassen nicht mehr mit dem & Operator zugeordnet werden dürfen.

Wenn man also die entsprechende Datei mit einem Editor an der genannten line öffnet, sieht man dort z.B. Folgendes:

$this->smilies =& new smilies_package($this->current_smilies);

Nun entfernt man einfach den & Operatoren nach dem = Zeichen und das Plugin läuft wieder wie ‘ne Eins.

Das war eigentlich das einzige Problem, welches ich bei der Umstellung auf PHP 7 hatte.

Viel Spaß mit dem extrem schnellen PHP 7 und eurer (alten) WordPress Installation!

Kommentar schreiben

12 Kommentare.

  1. Hallo Alex, ich hatte in einem anderen Plugin eine ähnliche Fehlermeldung. Mit dem Hinweis den & Operator zu entfernen, hast du ins Schwarze getroffen und mir wirklich weitergeholfen! Vielen Dank!

    Gruß, Martin

  2. Hallo Alex,

    hatte mir bei der “Reperatur” von bbcode PHP ( http://christian-seiler.de/projekte/php/bbcode/ ) ebenfalls sehr weitergeholfen :)!

    Vielen Dank!

    Nico

  3. Danke, schnell und unkompliziert, hat mein WP auch wieder zum Laufen gebracht !

  4. Und auch aus Wien ein gaaaanz herzliches Dankeschön für den hilfreichen Hinweis nebst sekundenschneller Lösung dank diesen “chirurgischen” Eingriffs.

  5. Danke, so schnell und einfach habe ich selten die richtige Lösung gefunden, TOP!

  6. Vielen Dank, hast unsere Schulhomepage gerettet! :)

  7. diese scheiße geht immer noch nicht bei mir

    Parse error: syntax error, unexpected ‘new’ (T_NEW) in /var/www/web2/html/include/includes/class/xajax.php5.inc.php on line 428

  8. Danke, genau das hat mir bei einem Forum & Plugin geholfen. Top!

  9. Prima! Ich musste gerade von php 5.6 auf 7.2 updaten und hatte danach genau diesen Fehler. Sehr einfach zu beheben, genau wie oben beschrieben.

    Dachte schon, ich muss mich nach einem neuen Theme umschauen, da das jetzige leider nicht mehr supportet wird …

  10. Danke vielmals!!
    Gosse Klasse

Kommentar schreiben