Piwigo Umstellung auf PHP7

Piwigo auf PHP7 umstellen ist eigentlich problemlos. Wenn da nicht dieses eine Plugin wäre: Advanced Menu Manager. Je nach Konfigration des Webservers sieht man Warnungen auf der Seite.

Im Logfile steht dann:

[Fri xxx xx 16:xx:xx.914143 2017] [:error] [pid xxxxx] [client xxxx] PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; AMM_AIM has a deprecated constructor in /xx/xx/xx/plugins/AMenuManager/amm_aim.class.inc.php on line 20, referer: https://xx.xx.xx/


[Fri xxx xx 16:xx:xx.675766 2017] [:error] [pid xxxxx] [client xxxx] PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; AMM_PIP has a deprecated constructor in /xx/xx/xx/plugins/AMenuManager/amm_pip.class.inc.php on line 19, referer: https://xx.xx.xx/

Mit PHP7 ist die alte Constructor-Schreibweise nicht mehr gültig. Sie muss durch eine neue ersetzt werden. Leider wird die sonst gute Erweiterung seit 2014 nicht mehr gepflegt. Aber man kann sich einfach selbst helfen. Man muss sich nur trauen in zwei Dateien kleine Änderungen zu machen.

Wir suchen uns den Ordner plugins/AMenuManager in unserer Piwigo-Installation. Dort finden sich zwei Dateien mit den Namen amm_pip.class.inc.php und amm_aim.class.inc.php. Wer vorsichtig ist, kopiert sich beide Dateien vorab irgendwohin. So hat man im Fall der Fälle ein Backup.

Änderung 1: amm_pip.class.inc.php, Zeile 19

Original: function AMM_PIP($prefixeTable, $filelocation)
Zu ersetzen durch: public function __construct($prefixeTable, $filelocation)

Änderung 2: amm_aim.class.inc.php, Zeile 20

Original: function AMM_AIM($prefixeTable, $filelocation)
Zu ersetzen durch: public function __construct($prefixeTable, $filelocation)

Läuft. Zur Sicherheit drücken wir im Admin unter Werkzeuge / Wartung auf „Kompilierte Vorlagen entfernen“.

Zumindest meine Bildergallerie funktioniert nun wieder problemlos!

2 Antworten auf „Piwigo Umstellung auf PHP7“

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.