Easy Digital Downloads usa un archivo .htaccess (para servidores Apache) para proteger los archivos de descarga de productos. Este archivo se coloca en wp-content/uploads/edd/. Las reglas en el archivo diferirán según tu Método de Descarga configurado en Descargas → Ajustes → Varios.
Si el Método de Descarga está configurado como Forzado, las reglas predeterminadas de .htaccess son:
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
Cómo modificar las reglas de .htaccess
A continuación se presentan diferentes opciones para modificar las reglas de .htaccess, ya sea a través de un filtro o usando un plugin de WordPress.
Nota: EDD reescribe el .htaccess una vez al día, por lo que no puedes hacer cambios directamente en el archivo .htaccess, de lo contrario, esos cambios se sobrescribirán.
1. Actualiza las reglas usando el filtro edd_protected_directory_htaccess_rules:
Estas reglas se pueden cambiar usando el filtro edd_protected_directory_htaccess_rules. Por ejemplo, si deseas bloquear el acceso directo a archivos .mp3 (por defecto están permitidos), puedes usar esto:
<?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 );
Para que los cambios surtan efecto, puedes esperar 24 horas o ir a Descargas > Ajustes > Varios, cambiar el Método de Descarga a un valor diferente y hacer clic en “Guardar Cambios”. Esto forzará la actualización del archivo .htaccess. Asegúrate de volver a cambiar el Método de Descarga al valor anterior y presiona Guardar Cambios nuevamente.
Vaciar .htaccess
Si necesitas deshacerte de todo, incluyendo
Options -Indexes
entonces puedes usar una función similar a la anterior, pero sin nada dentro. Ejemplo:
<?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 );
📢 Pro Tip: ¿Necesitas ayuda para agregar fragmentos de código a tu sitio? Recomendamos usar WPCode, el mejor plugin de fragmentos de WordPress. Con características como una biblioteca integrada de fragmentos y manejo de errores integrado, puedes personalizar tu sitio con confianza.
