Easy Digital Downloads verwendet eine .htaccess-Datei (für Apache-Server), um Produkt-Download-Dateien zu schützen. Diese Datei befindet sich in wp-content/uploads/edd/. Die Regeln in der Datei unterscheiden sich je nach Ihrer Download-Methode, die unter Downloads → Einstellungen → Diverses festgelegt ist.
Wenn die Download-Methode auf „Erzwingen“ gesetzt ist, lauten die Standard-Regeln der .htaccess-Datei:
Options -Indexes deny from all <filesmatch '.(jpg|png|gif|mp3|ogg) < pre> <p> If Download Method is set to Redirect, the rules are:</p> <pre>Options -Indexes
So ändern Sie .htaccess-Regeln
Nachfolgend finden Sie verschiedene Optionen zum Ändern der .htaccess-Regeln, entweder über einen Filter oder mithilfe eines WordPress-Plugins.
Hinweis: EDD schreibt die .htaccess-Datei einmal täglich neu, sodass Sie keine Änderungen direkt an der .htaccess-Datei selbst vornehmen können, da diese sonst überschrieben werden.
1. Regeln mit dem Filter edd_protected_directory_htaccess_rules aktualisieren:
Diese Regeln können mit dem Filter edd_protected_directory_htaccess_rules geändert werden. Wenn Sie beispielsweise direkten Zugriff auf .mp3-Dateien blockieren möchten (standardmäßig sind sie erlaubt), können Sie Folgendes verwenden:
<?php
function edd_custom_modify_htaccess_rules( $rules, $method ) {
switch( $method ) :
case 'redirect' :
// Prevent directory browsing
$rules = "Options -Indexes";
break;
case 'direct' :
default :
// Prevent directory browsing and direct access to all files, except images (they must be allowed for featured images / thumbnails)
$rules = "Options -Indexes\n";
$rules .= "deny from all\n";
$rules .= "<FilesMatch '\.(jpg|png|gif|ogg)$'>\n";
$rules .= "Order Allow,Deny\n";
$rules .= "Allow from all\n";
$rules .= "</FilesMatch>\n";
break;
endswitch;
return $rules;
}
add_filter( 'edd_protected_directory_htaccess_rules', 'edd_custom_modify_htaccess_rules', 10, 2 );
Damit die Änderungen wirksam werden, können Sie 24 Stunden warten oder zu Downloads > Einstellungen > Diverses gehen, die Download-Methode auf einen anderen Wert ändern und auf „Änderungen speichern“ klicken. Dadurch wird die .htaccess-Datei zum Aktualisieren gezwungen. Stellen Sie sicher, dass Sie die Download-Methode wieder auf den vorherigen Wert zurücksetzen und erneut auf Änderungen speichern klicken.
.htaccess leeren
Wenn Sie alles loswerden müssen, einschließlich
Options -Indexes
können Sie eine Funktion wie oben verwenden, aber ohne Inhalt. Beispiel:
<?php
function edd_custom_modify_htaccess_rules( $rules, $method ) {
$rules = "";
return $rules;
}
add_filter( 'edd_protected_directory_htaccess_rules', 'edd_custom_modify_htaccess_rules', 10, 2 );
📢 Profi-Tipp: Benötigen Sie Hilfe beim Hinzufügen von Code-Snippets zu Ihrer Website? Wir empfehlen die Verwendung von WPCode, dem besten WordPress-Snippets-Plugin. Mit Funktionen wie einer integrierten Snippet-Bibliothek und integrierter Fehlerbehandlung können Sie Ihre Website mit Zuversicht anpassen.
