Como alterar o tempo limite no upload moderno de arquivos

Visão geral

Deseja alterar o tempo limite ao fazer upload de arquivos por meio do campo de formulário Modern File Upload? Isso pode ser particularmente útil quando se espera que arquivos grandes sejam carregados por meio do formulário.

Por padrão, o tempo limite definido no campo Modern File Upload é de 30 segundos ou 30.000 milissegundos. Com um pequeno trecho de PHP, você pode alterar facilmente esse tempo limite para o valor que desejar.

Configuração

Tudo o que você precisa fazer é adicionar esse snippet ao seu site.

Se não tiver certeza de onde ou como adicionar snippets ao seu site, dê uma olhada neste tutorial.

Em nosso exemplo, estamos alterando o tempo limite de 30000 milissegundos (30 segundos) para 60000 milissegundos (60 segundos).

/**
 * 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 );

Você só precisa definir 60000 para o valor que desejar.

Observe que a simples alteração desse número não significa que sua empresa de hospedagem também não tenha um limite global definido para as funções de tempo limite, também conhecidas como PHP max_execution_time. Você precisará entrar em contato com a empresa de hospedagem para aumentar esse valor em seu servidor, caso seja necessário aumentá-lo também.

E é isso! Você aumentou com êxito o tempo limite de 30 segundos (30.000 milissegundos) para 60 segundos (60.000 milissegundos). Gostaria de rastrear também os envios bem-sucedidos de formulários com o Google Analytics sem a necessidade de um plug-in? Confira este snippet sobre Como rastrear envios de formulários usando o Google Analytics 4.

Referência da ação: wpforms_wp_footer