web-dev-qa-db-fra.com

Comment puis-je activer le téléchargement de fichiers Excel?

J'ai un utilisateur de la vieille école qui veut télécharger un fichier Excel sur notre page Wordpress.

Fondamentalement, Wordpress ne le permet pas.

Sur

https://Gist.github.com/robwent/e3bf00bafe7a00bc3d0c4dceabde4fca

Je mets ce qui suit dans functions.php avant la fin "comprend":

function my_custom_mime_types( $mimes ) {

    // New allowed mime types.
    $mimes['xls'] = 'application/vnd.ms-Excel';

    return $mimes;
}
add_filter( 'upload_mimes', 'my_custom_mime_types', 9999 );

Mais lors du téléchargement d'un fichier .xls, un message d'erreur m'indique que cela n'est pas autorisé pour des raisons de sécurité (re-traduit à partir de ma langue maternelle).

S'agissait-il d'une tentative dans la bonne direction? Comment puis-je faire ce travail?

1
Gergely

Je pense que le filtre approprié serait mime_types trouvé ici .

function wpse294198_mime_types( $mimes ) {
    $mimes['xls|xlsx'] = 'application/vnd.ms-Excel';
    return $mimes;
}
add_filter( 'mime_types', 'wpse294198_mime_types' );

Vous pouvez utiliser l'outil de ligne de commande file (linux | macOS) pour afficher le type mime, par exemple. file --mime-type -b somefile.xls

4
sandrodz

J'ai essayé la solution ci-dessus mais n'a pas fonctionné pour moi à la fin

J'ai autorisé tous les types MIME via wp-config.php

define( 'ALLOW_UNFILTERED_UPLOADS', true );

Vous pouvez créer votre restriction personnalisée lors de la soumission du fichier. utilisez le tableau $_FILES et définissez votre restriction sur l’extension du fichier et tapez-la avant le téléchargement.

0
Sayed Mohd Ali