WordPress por defecto restringe los tipos de archivos que puede cargar usando el Administrador de la Biblioteca de Medios. Para la mayoría de los usuarios, esta característica de seguridad es muy buena, ya que no permite a los editores poner en riesgo su servidor.
A continuación se listan los tipos de archivos permitidos a subir en WordPress:
Imagenes
- .jpg
- .jpeg
- .png
- .gif
Documentos
- .pdf (Portable Document Format; Adobe Acrobat)
- .doc, .docx (Microsoft Word Documento)
- .ppt, .pptx, .pps, .ppsx (Microsoft PowerPoint Presentacion)
- .odt (OpenDocument Text Documento)
- .xls, .xlsx (Microsoft Excel Documento)
Audio
- .mp3
- .m4a
- .ogg
- .wav
Video
- .mp4, .m4v (MPEG-4)
- .mov (QuickTime)
- .wmv (Windows Media Video)
- .avi
- .mpg
- .ogv (Ogg)
- .3gp (3GPP)
- .3g2 (3GPP2)
Si intenta cargar cualquier otro tipo de archivo, recibirá una advertencia de seguridad:
Lo sentimos, este tipo de archivo no está permitido por razones de seguridad.
Permitir cualquier tipo de archivo en WordPress
Para eso existen una forma sencilla de hacerlo. Esto es insertar la siguiente línea en tu archivo de configuracion de WordPress wp-config.php
define('ALLOW_UNFILTERED_UPLOADS', true);
Haciendo esto podras subir cualquier archivo con cualquier tipo de extensión como por Ejemplo .exe .apk .msi entre muchos mas.
¿Pero que pasa si vas a estar subiendo constantemente este tipo de archivos? Esta opción no es ideal ya que estamos permitiendo subir CUALQUIER tipo de archivo a nuestro sitio, para ese caso en concreto podeis añadir una funcion a nuestro archivo functions.php de nuestro tema. Esta función añadirá al filtrado de wordpress la extensión que le indiqueis:
function my_custom_mime_types( $mimes ) { // New allowed mime types. $mimes['svg'] = 'image/svg+xml'; $mimes['svgz'] = 'image/svg+xml'; $mimes['doc'] = 'application/msword'; // Optional. Remove a mime type. unset( $mimes['exe'] ); return $mimes; } add_filter( 'upload_mimes', 'my_custom_mime_types' );
Aqui el unico problema que tienes es que hay que especificar el tipo de archivo que es, por ejemplo exe apk o cualquier otra extension.