Cómo permitir a un colaborador subir archivos en WordPress

Permitir a un colaborador subir archivos en WordPress es uno de esos problemas que nos podemos encontrar si tenemos un blog colaborativo de wordpress. Y es que el rol de Colaborador (contributor). Es uno de los roles más utilizados cuando tienes un blog y quieres que otras personas, conocidos o amigos publiquen contenido en tu sitio.

Por defecto, el rol de Colaborador puede escribir nuevos artículos y editarlos y una vez escrito el artículo, éste no se publica directamente sino que se queda a la espera de aprobación por parte de un administrador.

El problema nos llega cuando este colaborador intenta subir un fichero de imagen para su artículo, pues tiene restringida esta capacidad y por defecto  y por lo tanto necesitamos hacer una pequeña modificación en el fichero functions.php de wordpress para que nos deje.

// Permitir al colaborador subir imágenes

 function update_caps() {

$role = get_role( 'contributor' );$caps_to_add = array(
'edit_others_posts',
'edit_published_posts',
'edit_others_pages',
'edit_published_pages',
'upload_files'
);
foreach( $caps_to_add as $cap )
$role->add_cap( $cap );
}
add_action('init', 'update_caps');

Añadiendo este código al fichero functions.php o en un plugin personalizado de WordPress para liberar el fichero functions.php  ya tendrás el problema resuelto.