Je crée un générateur CSS dans mon thème WordPress et je souhaite également pouvoir enregistrer des skins personnalisés avec des images. Mon problème est que j'ai une hiérarchie comme/skins/custom-skin/images pour les images téléchargées, mais comme vous le savez, WordPress Media Uploader les place dans le dossier de téléchargement par défaut, triées par date.
Ma question est la suivante: puis-je spécifier un chemin pour enregistrer l'image à chaque fois qu'une nouvelle image est téléchargée?
Dans,
Dashboard -> Settings -> Media
Vous pouvez décocher la,
☑ Organize my uploads into month- and year-based folders
... et éventuellement changer le chemin des téléchargements (mais cela affecterait bien sûr tous les téléchargements).
Vous pouvez éventuellement vous connecter au filtre upload_dir
et modifier le chemin de téléchargement pour un post_type
donné ou pour un autre scénario donné, en fonction de l'emplacement et des conditions dans lesquelles vous effectuez ces téléchargements.
add_filter( 'upload_dir', 'css_upload_dir' );
function css_upload_dir(){
global $post;
$post_id = $post->ID;
$upload = wp_upload_dir();
if( "post_type" == get_post_type($post_id) ){
$custom_dir = '/skins/custom-skin/images';
$upload['path'] = $upload['basedir'] . $custom_dir;
$upload['url'] = $upload['baseurl'] . $custom_dir;
return $upload;
}
}
Cela devrait fonctionner, même si je ne l'ai pas encore testé, je passe donc au début ma tête pour le moment.