Quindi, sto cercando di trovare un modo per utilizzare due cartelle di caricamento separate, essendo quella predefinita wp-content/uploads
per i caricamenti multimediali generali e un'altra wp-content/custom
per un tipo specifico di allegati (file PDF allegati a uno specifico post_type).
È importante tenerli separati sia per l'organizzazione che per la sicurezza dei dati poiché i file PDF conterranno dati piuttosto sensibili che dovrebbero essere accessibili solo da due ruoli utente personalizzati, mentre i media in generale sono, beh, generali.
Sono un po 'imbarazzato per mostrarti il codice che ho funzionato, perché è schifoso, ma qui va:
function custom_post_type_metabox_save_function($post_id) {
global $post;
// Verify auto-save, nonces, permissions and so on then:
update_post_meta($post_id, "meta_key1", $_POST["value1"]);
update_post_meta($post_id, "meta_key2", $_POST["value2"]);
// this is where it gets uply. I change the 'upload_path' to my desired one for this post type
update_option('upload_path','wp-content/custom-upload-dir');
// then upload the file to it
wp_upload_bits($_FILES["pdfexame"]["name"], null, file_get_contents($_FILES["pdfexame"]["tmp_name"]));
// and then change it back to default... :$
update_option('upload_path','');
}
add_action('save_post','custom_post_type_metabox_save_function');
Preferirei che solo 2 file di upload fossero uno per questo post-formato e un altro per il resto. C'è un modo più pulito per farlo?