Dem ein oder anderem wird es sicher auch schon so gegangen sein, man möchte die Auto-Update Funktion der Plugins nutzen aber leider erscheint nur eine Fehlermeldung:
Plugins aktualisieren
Warning: ftp_rawlist() [function.ftp-rawlist]: Unable to create temporary file. Check permissions in temporary files directory. in
/is/htdocs/wpxxxxxx_xxxxxx/lms2/wp-admin/includes/class-wp-filesystem-ftpext.php on line 327
Warning: ftp_rawlist() [function.ftp-rawlist]: Unable to create temporary file. Check permissions in temporary files directory. in
/is/htdocs/wpxxxxxx_xxxxxx/lms2/wp-admin/includes/class-wp-filesystem-ftpext.php on line 327
WordPress-Verzeichnis nicht gefunden.
Ein Blick ins deutsche Wordpress-Forum offenbart dann auch schnell das es zwar schon andere User mit diesem Problem gab, aber keine generelle Lösung existiert. Da die dort genannten Vorschläge
bei mir leider nicht halfen habe ich mich mal etwas weiter mit der Materie bzw Google und Wordpress trac auseinander gesetzt und eine Lösung gefunden die nun bei mir funktioniert und auch bei weiteren Usern laufen sollte. Ein Teil des Problems scheint ein Bug im WP-Code zu sein, der sich wohl je nach verwendetem Hoster auswirkt oder auch nicht. Bei Hosteurope funktioniert es so z.B. nicht.
Es gibt eine kurze und einfache Lösung aber auch eine etwas längere. Aber alles der Reihe nach.
Die folgende Anleitung bezieht sich auf Wordpress Version 2.5.1, dürfte aber auch in 2.5 oder nachfolgenden Versionen funktionieren falls der Fehler bis dahin noch nicht behoben wurde. Alle Änderungen geschehen auf eigenes Risiko, ich hafte für nichts.
Lösung:
In der Datei "wp-admin/includes/file.php" muss in Zeile zeile 324
if ( getmyuid() == fileowner($tempFile) ) {
in
if ( posix_getuid() == fileowner($tempFile) ) {
geändert werden
Damit müsste das Auto-Update nun funktionieren, Vorausgesetzt die Rechte der Plugin-Ordner sind per Chmod auf 777 gestellt und das Plugin ist in der korrekten Ordnerstruktur hochgeladen worden ohne zusätzliche Dateien mit in den Ordner zu packen. Die Codezeile stammt ursprünglich von hier .
Erweiterte Lösung:
Zusätzlich kann man dann in die Datei "wp-config.php" eine Definition für das Temp-Verzeichnis von Wordpress erstellt werden. Dies geschieht über
define(’WP_TEMP_DIR’, ini_get(’upload_tmp_dir’));
Die Zeile einfach unter die anderen "define" Zeilen in der Datei "wp-config.php" einfügen. Über diese Angabe wird Wordpress das gewünschte Temp-Verzeichnis mitgegeben. Leider ist es mir bisher nicht gelungen die korrekte Angabe für ein selbstgewähltes Verzeichnis zu finden, vielleicht hat ja jemand eine Idee hierfür.
Ich hoffe dies hilft dem ein oder anderen die Update-Funktion in Wordpress in Betrieb zu nehmen. Falls es noch fragen oder anregungen gibt könnt ihr diese gern in den Kommentaren hinterlassen.