Algumas pessoas relataram no fórum brasileiro do WordPress um problema após atualizar suas instalações para a versão 4.7.1: não é mais possível fazer upload de alguns tipos de arquivos. Esse é um bug já detectado e que pode ser acompanhado aqui.
O WordPress tem uma lista de extensões permitidas. Arquivos .rar, por exemplo, não são suportados por padrão. Para acrescentá-los você poderia usar o código abaixo no functions.php do seu tema. Ele faz uso do filtro upload_mimes.
function custom_upload_mimes( $existing_mimes = array() ) {
$existing_mimes['rar'] = 'application/x-rar-compressed';
return $existing_mimes;
}
add_filter( 'upload_mimes', 'custom_upload_mimes' );
Repare que a chave do novo elemento do array é a extensão do arquivo e seu valor é o mimetype. Essa string não era usada para arquivos que não fossem imagens, mas passou a ser testada na versão 4.7.1. O que acontece é que vários arquivos, quando baixados da internet, vem com o mimetype diferente do padrão e, por isso, o WordPress impede o upload. Por isso, ao tentar subir alguns arquivos .pdf, seu WordPress impedirá o upload: o mimetype do seu arquivo está diferente do esperado.
A solução fácil e rápida seria adicionar a seguinte linha ao seu wp-config.php
, logo acima da linha que diz /* Isto é tudo, pode parar de editar! :) */
:
define( 'ALLOW_UNFILTERED_UPLOADS', true );
Essa solução deve ser temporária: ela permite que todos os tipos de arquivos sejam enviados por todos os usuários, portanto um usuário com apenas função de autor poderia enviar um arquivo executável para o seu servidor.
Teve esse problema? Conseguiu resolver? Não esqueça de deixar sua experiência nos comentários. E reparou que novas extensões podem ser adicionadas com o uso de um filtro? Saiba mais acessando o post sobre hooks no WordPress: actions e filters.
Update 16h27min: Lançaram um plugin que resolve o problema enquanto isso, o Disable Real MIME Check.
Estou com o mesmo problema de subir arquivo excel com macros, por gentileza poderiam me apontar um camonho?
Vlw aqui deu super certo!
Muito bom guia! Um ótimo tutorial semelhante que ajuda quem está tendo mensagens de erro no WordPress que ajudou a resolver o problema que eu estava encontrando aqui é esse tutorial de segurança no WordPress
Onde encontro esse arquivo functions.php ? Estou tentando fazer upload de algumas musicas e não consigo devido a este erro. Se alguem puder me ajudar ficarei grato.
Na pasta do seu tema. Normalmente os temas estão na pasta wp-content/themes.
Pessoal desculpas minha ignorância estou aprendendo agora, em qual linha ou aonde insiro o filtro?
Pode inserir “logo acima da linha que diz /* Isto é tudo, pode parar de editar! 🙂 */”, no wp-config.php.
Parabéns cara. Matou na veia. Como pode os caras fazerem esse tipo de m…..
Amigo, vc me salvou!! Deu certinho aqui! Abração
Cara,Gratidão! Deu certo!
Fala Felipe!
Eu tentei esse método para resolver o problema mas aparentemente nada aconteceu… Tentei as duas formas mas não obtive sucesso. Seria o caso de reiniciar o servidor de hospedagem?
Olá Gabriel! Chegou a tentar o plugin também? Qual é o tipo de arquivo que você está tentando usar?
Oi Felipe! Consegui depois aqui. O erro era meu.
Muito obrigado pela atenção e pela ajuda.
Fala, Gabriel!
Tentei aqui e funcionou. Porém, tive que inserir os dois códigos. Acredito que não sejam duas formas de fazer e sim apenas uma. Seria isso, @felipe_elia:disqus ?
No mais, muito obrigado, Felipe por publicar uma solução. Me ajudou. Abraço!
Valeu Henrique!
Rolou aqui. Eu estava errando.
Obrigado pelo help!
Oi Henrique, valeu pela informação. Com qual tipo de arquivo você está trabalhando? Para tipos não suportados pelo WordPress é preciso as duas formas, senão ACHO que só a segunda já resolve. 🙂
Ah, bacana. Não cheguei a testar só com a segunda. Estava tendo dificuldades com arquivos “.rar”.