Posso forçar a aceitação dos termos antes de visualizar ou carregar arquivos?

Um usuário solicitou um recurso que faria o visitante do site marcar uma caixa de seleção para aceitar os termos de serviço e a política de privacidade antes de permitir o upload de um arquivo.

Você deve marcar esta caixa antes de poder carregar um arquivo.

Vá em frente, verifique.

Fazer upload de arquivos


Processando o upload

Limite de arquivos: 3 arquivos
Limite de tamanho: 100 MB por arquivo.
Tipos permitidos: aiff, doc, docx, gif, jpg, jpeg, mp3, mp4, mov, pdf, png, tif, tiff, zip
Arraste e solte arquivos aqui ou use o botão Procurar.

Se você se sentir confortável em fazer um pouco de codificação, isso pode ser feito com um simples Javascript adicionado ao seu tema e HTML no conteúdo da página. Veja como:

Conteúdo da página

Coloque um bloco HTML acima do código curto da Lista de arquivos simples. Esta é simplesmente uma caixa de seleção seguida por sua mensagem. Você pode adicionar um link para o texto completo, se desejar.

<p>
  <input id="myCheckToUpoad" type="checkbox" name="Checkbox" value="YES">Check this Box.
</p>

Javascript no seu tema

A chave para o código acima é o id="myCheckToUpoad". O Javascript irá se conectar a isso e mostrar ou ocultar o remetente. Você também pode usar isso para a lista de arquivos, ou ambos.

Localize o arquivo functions.php do seu tema atual.

Adicione esse código e salve.

// Function to output Javascript in theme <head>
function myHead() { ?>

<script>
jQuery(document).ready(function() {

jQuery('#eeUploadForm').hide(); // Hide the form straight away
 
jQuery('#myCheckToUpoad').click(function() { // The box is clicked...

     // Either show or hide, depending if ticked or not       
     if (jQuery('#eeUploadForm').is(':visible')) { 

         jQuery('#eeUploadForm').slideUp(); // Hide

        } else {

             jQuery('#eeUploadForm').slideDown(); // Show
     }

    });

}); // END Ready Function

</script>

<?php }

// Hook into WordPress loading process
add_action('wp_head', 'myHead'); // Add to the page's <head>

Há muitas melhorias que podem ser feitas neste exemplo, mas isso é basicamente tudo o que você precisa para começar.

Deixe-me saber se você precisar de ajuda.

Deixe um comentário

Este site usa o Akismet para reduzir o spam. Saiba como seus dados de comentário são processados.