Come modificare il timeout del caricamento moderno dei file

Panoramica

Desiderate modificare il timeout per il caricamento di file attraverso il campo del modulo Modern File Upload? Questo può essere particolarmente utile quando si prevede il caricamento di file di grandi dimensioni attraverso il modulo.

Per impostazione predefinita, il timeout del campo Modern File Upload è impostato su 30 secondi o 30000 millisecondi; con un piccolo snippet PHP è possibile modificare facilmente questo timeout per ottenere il valore desiderato.

Impostazione

Tutto ciò che dovete fare è aggiungere questo snippet al vostro sito.

Se non siete sicuri di dove o come aggiungere gli snippet al vostro sito, date un'occhiata a questo tutorial.

Nel nostro esempio, cambiamo il timeout da 30000 millisecondi (30 secondi) a 60000 millisecondi (60 secondi).

/**
 * Change the timeout on the modern file upload from 30 to 60 seconds.
 *
 * @link https://wpforms.com/developers/how-to-change-the-timeout-on-the-modern-file-upload/
 */

function wpf_dev_modern_file_upload_timeout() {
	?>
	<script type="text/javascript">
		window.addEventListener( 'load', function() {
			if ( typeof wpforms.dropzones === 'undefined' )  {
				return;
			}
			wpforms.dropzones.forEach(function( dropzone ) {
				dropzone.options.timeout = 60000; // The timeout for the XHR requests in milliseconds.
			});
		} );
	</script>
	<?php
}
add_action( 'wpforms_wp_footer', 'wpf_dev_modern_file_upload_timeout', 30 );

È sufficiente impostare il valore 60000 come desiderato.

Si noti che la semplice modifica di questo numero non significa che la società di hosting non abbia impostato un limite globale per le funzioni di timeout, noto anche come PHP max_execution_time. Dovrete contattare la vostra società di hosting per aumentare questo valore sul vostro server se avete bisogno di aumentare anche questa quantità.

Ed ecco fatto! Avete aumentato il timeout da 30 secondi (30000 millisecondi) a 60 secondi (60000 millisecondi). Volete anche tracciare gli invii di successo dei moduli con Google Analytics senza bisogno di un plugin? Date un'occhiata a questo snippet su Come tracciare gli invii di un modulo con Google Analytics 4.

Riferimento azione: wpforms_wp_footer