Ein kleiner WordPressfehler mit jquery.php ist behoben.

Gerade habe ich gesehen, dass man beim stöbern in der Mediathek von WordPress der Version 3.1.3 einen Fehler in der Art angezeigt bekommt:

Warning: in_array() expects parameter 2 to be array, null given in C:wampwwwwp themewp-includesquery.php on line 2399

Das sah für mich anfangs wirklich recht schlimm aus und trat bei mir eben auch nicht in allen WordPressinstallationen auf, was mich schon etwas beunruhigt hat. Kurz Google angeschmissen, wurde ich aber auch direkt im WordPressforum fündig und kann jetzt erstmal wirklich jeden beruhigen, denn es sieht nur schlimm aus, es passiert aber nichts.

In den Beta-Versionen ab 3.2 tritt das Problem auch nicht auf, von einem verfrühten Upgrade wird bei Betavarianten aber abgeraten, da hier und dort noch Fehler enthalten sein können.

Wie ist aber nun die Lösung des Problems? Um den Fehler, der im Sicherheitsrelease WordPress 3.1.4 wohl ohnehin behoben sein wird, jetzt gleich nicht mehr ansehen zu müssen – weil sieht eben unschön aus – und auch kein langweiliges Plugin installieren zu müssen suche im Ordner wp-includes deiner WordPressinstallation die Datei query.php.

Innerhalb der Datei gehst nun zu Zeile 2388 oder suchst

if ( isset($q['post_status']) && $q['post_status'] != '' ) {
			$statuswheres = array();
			$q_status = explode(',', $q['post_status']);


und ersetzt das damit:

if ( ! empty( $q['post_status'] ) ) {
			$statuswheres = array();
			$q_status = $q['post_status'];
			if ( ! is_array( $q_status ) )
				$q_status = explode(',', $q_status);

Wem das alles hier viel zu viel Aufwand ist, der kann natürlich auch direkt meine neue query.php herunterladen und bei sich ersetzen.

Ich hoffe dir hat dieser Beitrag irgendetwas gebracht und freue mich sehr darüber, dass du dir die Zeit genommen hast, bis hier hin zu lesen. Lass doch einen Kommentar hier.