Ich möchte das Upload-Verzeichnis für PDF Dateien only ändern, nicht für andere Dateien. Beispielsweise würden die PDF -Dateien in wp-content/uploads/pdf
hochgeladen, andere Dateien jedoch in wp-content/uploads/yyyy/mm
verbleiben.
Ich weiß, dass es möglich ist, upload_dir
zu filtern, aber ich weiß nicht, wie ich das mit Dateitypen/Mimen machen soll.
Vielen Dank!
Im Anschluss an Justice Is Cheap lead habe ich die Anpassung der Funktionen dieses Plugins beendet: http://wordpress.org/extend/plugins/custom-upload-dir/
<?php
/*
* Change upload directory for PDF files
* Only works in WordPress 3.3+
*/
add_filter('wp_handle_upload_prefilter', 'wpse47415_pre_upload');
add_filter('wp_handle_upload', 'wpse47415_post_upload');
function wpse47415_pre_upload($file){
add_filter('upload_dir', 'wpse47415_custom_upload_dir');
return $file;
}
function wpse47415_post_upload($fileinfo){
remove_filter('upload_dir', 'wpse47415_custom_upload_dir');
return $fileinfo;
}
function wpse47415_custom_upload_dir($path){
$extension = substr(strrchr($_POST['name'],'.'),1);
if(!empty($path['error']) || $extension != 'pdf') { return $path; } //error or other filetype; do nothing.
$customdir = '/pdf';
$path['path'] = str_replace($path['subdir'], '', $path['path']); //remove default subdir (year/month)
$path['url'] = str_replace($path['subdir'], '', $path['url']);
$path['subdir'] = $customdir;
$path['path'] .= $customdir;
$path['url'] .= $customdir;
return $path;
}
sie können das Upload-Verzeichnis von der wp-config.php-Datei in WordPress ändern.
define ('UPLOADS', 'myimages'); Stellen Sie sicher, dass Sie diesen Code vor der Zeile einfügen:
require_once (ABSPATH.’wp-settings.php ’);
auf diese Weise können Sie Medien in den Ordner "myimages" anstelle von "wp-content/uploads" hochladen
Vielen Dank