Diese Fehlermeldung erschien nach einem Umzug einer WordPress 4.4.8 Webseite von einem net-server (PHP 5.6) auf einen kasserver (PHP 7.1).

PHP 7.1 hat ein paar Funktionen geändert für den Umgang mit strings und arrays. wp-login.php gibt dann einen leeren string an wp_signon weiter, wo eigentlich ein array erwartet wird.

Ohne das hier ausführen zu wollen und zu können zeige ich hier einfach die Lösung indem eine Code-Zeile in der Datei wp-login.php geändert wird.  Man öffnet mit einem FTP-Zugang die Datei wp-login.php

$reauth = empty($_REQUEST[‘reauth’]) ? false : true;

$user = wp_signon( ”, $secure_cookie );
$user = wp_signon( array(), $secure_cookie );

if ( empty( $_COOKIE[ LOGGED_IN_COOKIE ] ) ) {
if ( headers_sent() ) {

Und ersetzt die rote Code-Zeile durch die grüne. Danach konnte ich mich endlich einloggen und auf die neueste WordPress Version 4.7.3 updaten und weitere (Folge-)Fehler wurden damit automatisch beseitigt.