Doriți să încărcați fișiere trimise de utilizatori în biblioteca media? Acest fragment va gestiona încărcarea fișierelor în biblioteca dvs. media.
Instrucțiuni
- Adăugați acest cod în fișierul functions.php al temei dvs. sau într-un plugin specific site-ului.
- All uploaded files are stored in the $_FILES array, so you will need to loop through the
$_FILESarray and pass each file array to theupload_user_file()function. You can use this code in your form handler:
if( ! empty( $_FILES ) ) { foreach( $_FILES as $file ) { if( is_array( $file ) ) { $attachment_id = upload_user_file( $file ); } } } - Rețineți că, dacă doriți ca formularul dvs. să poată gestiona încărcări de fișiere, atunci trebuie să adăugați atributul
enctype="multipart/form-data"la eticheta<form>.
function upload_user_file( $file = array() ) {
require_once( ABSPATH . 'wp-admin/includes/admin.php' );
$file_return = wp_handle_upload( $file, array('test_form' => false ) );
if( isset( $file_return['error'] ) || isset( $file_return['upload_error_handler'] ) ) {
return false;
} else {
$filename = $file_return['file'];
$attachment = array(
'post_mime_type' => $file_return['type'],
'post_title' => preg_replace( '/\.[^.]+$/', '', basename( $filename ) ),
'post_content' => '',
'post_status' => 'inherit',
'guid' => $file_return['url']
);
$attachment_id = wp_insert_attachment( $attachment, $file_return['url'] );
require_once(ABSPATH . 'wp-admin/includes/image.php');
$attachment_data = wp_generate_attachment_metadata( $attachment_id, $filename );
wp_update_attachment_metadata( $attachment_id, $attachment_data );
if( 0 < intval( $attachment_id ) ) {
return $attachment_id;
}
}
return false;
}
Notă: Dacă este prima dată când adăugați secvențe de cod în WordPress, consultați ghidul nostru despre cum să copiați / lipiți corect secvențe de cod în WordPress, pentru a nu vă defecta accidental site-ul.
Dacă v-a plăcut acest fragment de cod, vă rugăm să luați în considerare vizualizarea Cum să configurați urmărirea descărcărilor în WordPress cu Google Analytics
Super, există un cod prin care puteți previzualiza fișierul?
Sunt sigur că orice s-ar putea face, dar nu are o previzualizare a fișierului.