Bei der kommenden Version 2.5 von WordPress hat sich (wie dem ein oder anderen bekannt) einiges im Adminbereich geändert. Nicht nur die Optik hat einen neuen Anstrich bekommen, sondern auch technisch wurde einiges überarbeitet. Davon betroffen ist auch das Hochladen von Dateien. Beim Upload von Bildern werden z.B. zwei Thumbnails (klein und mittel) erstellt. Das “tolle” darin ist, dass bei einer frischen Installation von WordPress 2.5 (RC1) bei meinem Webhoster der Wahl Domainfactory, keine der drei Dateien die richtigen Rechte erhält, so dass man damit arbeiten kann, sprich, diese aufgerufen werden können. Auch bei anderen Dateien (Dokumente, Audio oder Video) werden die Dateirechte falsch gesetzt. Das Problem ist bekannt.
Ich habe versucht mein Plugin für die WordPress 2.5 anzupassen. Das Problem daran ist aber, dass das Erstellen der Thumbnails *nach* dem eigentlich Upload durchgeführt wird. Damit ist der Zugriff über ein Plugin während des Upload-Vorgangs unmöglich. Überall dort, wo nur eine Datei auf dem Webspace ankommt, als nach dem Upload nichts mehr mit der Datei gemacht wird, kann man die Dateirechte noch via Plugin ändern. Das ist aber nur ein kleiner Trost.
Auch wenn ich sehr gerne an dem Plugin rumprogrammiere, frage ich mich, wieso dieses Problem überhaupt auftritt. Ein generelles Problem mit dem Setzen der Dateirechte durch WordPress liegt m.M.n nicht vor, sonst würde das Problem überall auftreten und nicht nur bei Domainfactory. Mich würde wirkliche interessieren warum ausgerechnet diese eine Funktion in WordPress so mit dem Webspace von Domainfactory kollidiert.
So wie ich das im Moment sehe, ist eine eigene Installation von WordPress 2.5 auf Webspace von Domainfactory, nur mit manuellem eingreifen (via FTP) nach jedem Upload nutzbar.
[UPDATE]
Lese gerade bei momworx, dass das Problem wohl dann auftritt, wenn der “Apache als CGI-Modul” läuft. Ich vermute mal, dass hier wohl eher PHP als CGI-Modul gemeint ist. Dann müsste das Problem aber viel häufiger auftreten.
[2. UPDATE]
Habe gerade einmal ohne mein Plugin mit modifizierter /wp-admin/includes/file.php ein Bild hoch geladen. Gleiches Problem: die Rechte des Originalbildes werden geändert, nicht aber die der Thumbnails.
[3. UPDATE]
Nachdem ich mir die zuständigen Dateien angesehen habe, bin ich doch tatsächlich auf die richtige Funktion gestoßen. Deshalb hier mein Workaround für das Aktualisieren der Dateireche bei WordPress 2.5.
Änderungen in der Datei wp-admin/includes/file.php
Suchen nach
Und wie folgt erweitern
Damit sind dann schon einmal die Dateirechte der Originaldatei geändert.
Änderungen in der Datei wp-admin/includes/image.php
Suche nach
$image_meta = wp_read_image_metadata( $file );
if ($image_meta)
$metadata['image_meta'] = $image_meta;
Und direkt darunter folgenden Code anfügen
Erläuterung: da (aufgrund der im Dateiname eingefügten Dimensionen) nicht bekannt ist, welchen Dateiname die Thumbs haben, schneiden wir als erstes die Dateiendung mit explode ab. Danach suchen wir mit der PHP-Funktion glob nach allen Dateien mit dem übergeben Dateiname (ohne Endung) und ändern die Dateirechte.
Nutzung auf eigene Gefahr!
Mal sehen, ob ich das irgendwie in mein Plugin bekomme. Bei jeder neuen WordPress Version im Code rumzufummeln finde ich nämlich ziemlich albern.
[4. UPDATE]
Da ich jetzt wusste, wo ich suchen muss konnte ich das Ganze auch in mein Plugin integrieren. Das hat zwar nochmal ein bisschen Zeit gekostet, aber jetzt funktioniert das Ändern auch automatisch in WordPress 2.5. Siehe hier.

Ich verstehe das auch nicht so wirklich. Gibt es im Forum von Domainfactory schon was dazu? Anderseits ist es für mich immer wieder schon Normalität die jeweilige WordPress Datei selbst anzupassen.
Interessanterweise ist die WordPress Installation, die man im Domainfactory Kundenbereich installieren kann, nicht davon betroffen. Da passt dF wohl selbst vorab was an?
Aus dem Df Forum ist mir nur folgender Eintrag bekannt:
http://forum.df.eu/forum/showthread.php?t=43026
Domainfactory schraubt an der selbst angebotenen Version, laut Forum, selber an WordPress herum und ändert bei jeder Version den Code.
Siehe Übrigens auch “2. Update”. Jetzt hilft auch die manuelle Anpassung nicht mehr …
Hi kubi,
ich binde deinen Code grad wieder bei WPDE ein. Hoffe du hast nichts dagegen!
Sowieso Daumen hoch!!!
@the0bone
Klar, kein Thema.
funktioniert auch noch mit 2.8 prima, danke sehr!
Super, vielen Dank dafür! Kann bestätigen, es funktioniert auch mit WordPress 2.8.6 … ich bin zwar nicht direkt bei domainfactory, sondern beim Ableger domaingo, dort herrscht aber das gleiche Problem. Hatte zunächst dein Plugin installiert und war damit zufrieden beim normalen Upload über den Medienpool. Hab dann aber festgestellt, dass mein Galerie Plugin NextGEN weiterhinhin Probleme hat und mich deshalb entschieden die Anpassungen im WP Code vorzunehmen. Und es funktioniert perfekt! Nochmal vielen Dank!