WordPress, por padrão, é limitado o “tipos de arquivo” mime você pode fazer o upload através do carregador editor de postagem. Isso é bom, em princípio, porque restringe a carga de arquivos potencialmente perigosos, em que usa-lo como uma restrição excessiva.
Felizmente Você pode alterar esse comportamento usando o “gancho“Call 'upload_mimes'
Infelizmente nada documentado no Codex.
Para começar, sabemos que há 35 tipos de arquivo permitido por padrãoDefinido no arquivo '/ Wp-includes/functions.php'
da sua instalação do WordPress. Se você olhar para o arquivo, veja a linha seguinte história de 2275:
[sourcecode language=”php”]
function get_allowed_mime_types() {
static $mimes = false;
if ( !$mimes ) {
// Accepted MIME types are set here as PCRE unless provided.
$mimes = apply_filters( ‘upload_mimes’, array(
‘jpg|jpeg|jpe’ => ‘image/jpeg’,
‘gif’ => ‘image/gif’,
‘png’ => ‘image/png’,
‘bmp’ => ‘image/bmp’,
‘tif|tiff’ => ‘image/tiff’,
‘ico’ => ‘image/x-icon’,
‘asf|asx|wax|wmv|wmx’ => ‘video/asf’,
‘avi’ => ‘video/avi’,
‘divx’ => ‘video/divx’,
‘flv’ => ‘video/x-flv’,
‘mov|qt’ => ‘video/quicktime’,
‘mpeg|mpg|mpe’ => ‘video/mpeg’,
‘txt|c|cc|h’ => ‘text/plain’,
‘rtx’ => ‘text/richtext’,
‘css’ => ‘text/css’,
‘htm|html’ => ‘text/html’,
‘mp3|m4a’ => ‘audio/mpeg’,
‘mp4|m4v’ => ‘video/mp4’,
‘ra|ram’ => ‘audio/x-realaudio’,
‘wav’ => ‘audio/wav’,
‘ogg’ => ‘audio/ogg’,
‘mid|midi’ => ‘audio/midi’,
‘wma’ => ‘audio/wma’,
‘rtf’ => ‘application/rtf’,
‘js’ => ‘application/javascript’,
‘pdf’ => ‘application/pdf’,
‘doc|docx’ => ‘application/msword’,
‘pot|pps|ppt|pptx’ => ‘application/vnd.ms-powerpoint’,
‘wri’ => ‘application/vnd.ms-write’,
‘xla|xls|xlsx|xlt|xlw’ => ‘application/vnd.ms-excel’,
‘mdb’ => ‘application/vnd.ms-access’,
‘mpp’ => ‘application/vnd.ms-project’,
‘swf’ => ‘application/x-shockwave-flash’,
‘class’ => ‘application/java’,
‘tar’ => ‘application/x-tar’,
‘zip’ => ‘application/zip’,
‘gz|gzip’ => ‘application/x-gzip’,
‘exe’ => ‘application/x-msdownload’,
// openoffice formats
‘odt’ => ‘application/vnd.oasis.opendocument.text’,
‘odp’ => ‘application/vnd.oasis.opendocument.presentation’,
‘ods’ => ‘application/vnd.oasis.opendocument.spreadsheet’,
‘odg’ => ‘application/vnd.oasis.opendocument.graphics’,
‘odc’ => ‘application/vnd.oasis.opendocument.chart’,
‘odb’ => ‘application/vnd.oasis.opendocument.database’,
‘odf’ => ‘application/vnd.oasis.opendocument.formula’,
) );
}
return $mimes;
}
[/sourcecode]
Se você precisar de qualquer arquivo que não esteja listado pode fazer duas coisas. Um muito óbvia, é a de adicionar o tipo de arquivo na lista, mas tem um problema: você deve se lembrar de voltar a adicioná-lo cada vez que você atualizar o WordPress, bem como não é uma boa idéia para mudar os arquivos essência
.
A melhor idéia é criar uma nova função no arquivo functions.php
do seu item, você sempre pode facilmente exportados para outro tópico, e não perder, mesmo se você atualizar WordPress.
Para fazer isso você tem que adicionar estas linhas:
[sourcecode language=”php”]
//Añadiendo mimes
add_filter(‘upload_mimes’, ‘mis_mimes’);
function mis_mimes ( $existing_mimes=array() ) {
// agrega tu ext => mime al array
$existing_mimes[‘ext’] = ‘mime/type’;
// agrega tantas como necesites
// y devuelve el resultado a la lista completa
return $existing_mimes;
}
[/sourcecode]
Note que a função aceita a matriz Existing_mimes $
Adiciona um novo tipo de arquivo (com extensão “ext” e do tipo mime “mime / type”), em seguida, retorna a matriz inteira.
Naturalmente, você poderia substituir a palavra “ext” com a extensão que deseja adicionar e em seguida, procure no Google para saber o seu mime type3 e colocá-lo corretamente (se você não sabia). De lá você pode ir em linha e vá acrescentando copiando as linhas que você precisa adicionar tipos de arquivo, cada um com sua extensão e tipo de mímica, é claro.
O que você deseja cancelar extensões de arquivo, em vez de adicioná-los?, Pois então é isso que você faz:
Substituir a linha Existing_mimes $ [ 'ext'] = 'Tipo de Mime /';
por unset ($ existing_mimes [ 'ext']);
e que você tem. Um exemplo seria o seguinte:
[sourcecode language=”php”]
unset( $existing_mimes[‘exe’] );
[/sourcecode]
Interessante, não é?. Espero que servem para dar mais segurança à sua instalação do WordPress, especialmente se os outros têm acesso a ela.
Fontes: Opção de filtros (Codex) | Chris Meller | Head First Productions
Fonte: ayudawordpress
Um comentário sobre “Alterar os tipos de arquivo podem ser inseridos”