Domanda

Non credo che abbia mai avuto necessità pratica di creare cartelle / file in WP prima, ma per una cache necessità plug-I (per le immagini ridimensionate) cartella in wp-content/uploads.

Il che solleva la questione - Ho davvero bisogno di passare attraverso tutto il processo con Filesystem API (compresi messily chiedere le credenziali FTP quando necessario), o wp_mkdir_p() è buono abbastanza per questo?

È stato utile?

Soluzione

wp-content/uploads/ deve essere scrivibile per il server (altrimenti sarebbe impossibile di caricare un file, no?). Se avete intenzione di creare qualcosa in questa directory, è sicuro da usare wp_mkdir_p().

userei solo WP_Filesystem se c'è una possibilità che il server non dispone di autorizzazioni per scrivere la posizione, come in wp-content/plugins/, che non deve essere scrivibile per il server (almeno penso che non deve essere?).

Nota a margine: pagina i permessi dei file del Codex parla anche di una directory wp-content/cache/. Questo sarebbe una posizione "più standard" per i file di cache?

Altri suggerimenti

mi piacerebbe provare qualcosa di semplice, prima di fare in giro con un mare infinito di possibilità / hosting di configurazioni:

$target = 'wherever';
wp_mkdir_p( $target );

if ( wp_mkdir_p( $target ) === TRUE )
{
    echo "Folder $target successfully created";
}
else
{
    new WP_Error; #... etc. Just tell where the user has to make a new folder with the name xy
    // or if you're kool, you use _doing_it_wrong(); ... ;-)
}

Solo un testa a testa su avendo il plugin creano file / cartelle: il mio plug-in ha fatto così, e mi sono imbattuto in una sfilza di problemi con i permessi dei file per i diversi utenti. Alcuni sono finestre, alcuni sono unix, alcuni sono ospitati, e qualche casa cresciuto. Era il mio # 1 supporto e-mail una volta che ho condiviso il plugin.

Ho refactoring il mio codice di ridurre al minimo la necessità di toccare i file system e la directory di upload è l'unico che uso ora per evitare questi problemi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a wordpress.stackexchange
scroll top