Respuestas:
$form['picture']['file'] = array(
'#type' => 'managed_file',
'#title' => t('picture'),
'#description' => t('Allowed extensions: gif png jpg jpeg'),
'#default_value' => (isset($foo->picture->fid) ? $foo->picture->fid : ''),
'#upload_location' => variable_get('picture_upload_location'),
'#upload_validators' => array(
'file_validate_extensions' => array('gif png jpg jpeg'),
// Pass the maximum file size in bytes
'file_validate_size' => array(MAX_FILE_SIZE*1024*1024),
),
);
$file = file_save_upload('file', $form['picture']['file']['#upload_validators']);
No estoy seguro si está utilizando Drupal 6 o Drupal 7, pero en Drupal 6 elegiría:
Admin > Contenido > Tipos de contenido > [Su tipo de contenido]> Administrar campos > [Editar su campo de archivo] y busque la configuración de campo de "Extensiones de archivo de carga permitidas"
En ese campo, ingrese zip
Drupal 7 es probablemente similar. Busque Tipos de contenido en Administrador > Estructura .