Kann doc und pdf hochladen, aber nicht ppt - aus Sicherheitsgründen nicht erlaubt

7

„Insert Suchmaschine hier“ war für diese eine ziemlich nutzlos - ich einen Blick durch hatte wp-includes/functions.php, wp-admin/includes/file.phpetc. , aber nicht fand einen Grund für das Verhalten Ich erhalte.

Ich verwende Multisite und wenn ich eine .doc- oder .pdf-Datei hochlade, habe ich kein Problem. Wenn ich eine PPT-Datei hochlade - unabhängig vom tatsächlichen Dateinamen oder Mimetyp (dh eine PPT-Datei, die in TXT umbenannt wurde, eine TXT-Datei, die in PPT umbenannt wurde), wird mir mitgeteilt, dass dieser Dateityp aus Sicherheitsgründen nicht zulässig ist. mit wenig anderer Erklärung.

Muss ich die Mimes-Tabelle ändern, eine Überschreibung hinzufügen (und wenn ja, wie lautet die Syntax dafür), oder ist es etwas in meiner Apache-Konfiguration? Ich habe ein paar lustige Fummelei gemacht, um zu versuchen, Dinge an einigen Stellen zu sperren und möglicherweise .pot-Dateien zu blockieren.

Andrew
quelle
codex.wordpress.org/User:T31os/Allowed_Mimes zeigt ppt als erlaubten MIME- Typ, nur zur Information
Rev. Voodoo

Antworten:

6

Beim meta_keyDurchsuchen in den Netzwerkadministratoreinstellungen für mehrere Standorte gefunden : Es gibt eine Einstellung namens "Dateitypen hochladen" (in der Datenbank ist es die Zeile mit = "upload_filetypes" in der wp_sitemetaTabelle), die eine Liste der zulässigen Dateitypen enthält. Durch Hinzufügen von "ppt" zur Liste können sie hochgeladen werden.

Andrew
quelle
5

WordPress scheint keine Möglichkeit zu haben, diese Einstellungen zu ändern, außer dem, was Sie in der Datenbank getan haben. Aber haben Sie versucht, diesen Code zu verwenden?

<?php
add_filter('upload_mimes', 'custom_upload_mimes');
function custom_upload_mimes ( $existing_mimes = array() ) {
    // add your extension to the array
    $existing_mimes['ppt'] = 'application/vnd.ms-powerpoint';
    // or: $existing_mimes['ppt|pot|pps'] = 'application/vnd.ms-powerpoint';
    // to add multiple extensions for the same mime type
    // add as many as you like
    // removing existing file types
    unset( $existing_mimes['exe'] );
    // add as many as you like
    // and return the new full result
    return $existing_mimes;
}
?>

Verwenden Sie diesen Code in Ihrer Themenfunktionsdatei. Mit dem Filter upload_mimeskönnen Sie anscheinend andere zulässige Upload-Erweiterungen festlegen und den MIME-Typ der Erweiterung für die Verwendung in WP korrekt festlegen. Der Vorteil dieser Vorgehensweise besteht außerdem darin, dass das Upgrade sicher ist.

Wenn Sie eine Liste von MIME-Typen benötigen: http://www.w3schools.com/media/media_mimeref.asp

Scott
quelle
Ich verwende Multisite - es befindet sich unter "Netzwerkadministrator", "Einstellungen" - example.com/wp-admin/network/settings.php
Andrew
2
Bei Nicht-Multisites ist Bradys Antwort die Antwort .!
brasofilo