Easy Digital Downloads usa um arquivo .htaccess (para servidores Apache) para proteger os arquivos de download de produtos. Este arquivo é colocado em wp-content/uploads/edd/. As regras no arquivo diferirão dependendo do seu Método de Download definido em Downloads → Configurações → Misc.
Se o Método de Download estiver definido como Forçado, as regras padrão do .htaccess são:
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
Como modificar as regras do .htaccess
Abaixo estão diferentes opções para modificar as regras do .htaccess, seja através de um filtro ou usando um plugin do WordPress.
Observação: O EDD reescreve o .htaccess uma vez por dia, portanto, você não pode fazer alterações diretamente no arquivo .htaccess em si, caso contrário, essas alterações serão substituídas.
1. Atualize as regras usando o filtro edd_protected_directory_htaccess_rules:
Essas regras podem ser alteradas usando o filtro edd_protected_directory_htaccess_rules. Por exemplo, se você quiser bloquear o acesso direto a arquivos .mp3 (por padrão, eles são permitidos), você pode usar isto:
<?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 as alterações entrem em vigor, você pode esperar 24 horas ou ir para Downloads > Configurações > Misc, alterar o Método de Download para um valor diferente e clicar em “Salvar Alterações”. Isso forçará a atualização do arquivo .htaccess. Certifique-se de alterar o Método de Download de volta para o valor anterior e clique em Salvar Alterações novamente.
Esvaziando o .htaccess
Se você precisar se livrar de tudo, incluindo
Options -Indexes
então você pode usar uma função semelhante à acima, mas sem nada dentro dela. Exemplo:
<?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 );
📢 Dica Pro: Precisa de ajuda para adicionar trechos de código ao seu site? Recomendamos o uso do WPCode, o melhor plugin de trechos do WordPress. Com recursos como uma biblioteca integrada de trechos e tratamento de erros integrado, você pode personalizar seu site com confiança.
