Indeksowanie katalogu bloków w WordPressie za pomocą .htaccess
Objaśnienie
Aby uniemożliwić innym przeglądanie listy plików w katalogach WordPress, możesz użyć specjalnego pliku o nazwie .htaccess. Plik ten informuje serwer, co powinien, a czego nie powinien robić.
Podany kod automatycznie dodaje regułę do twojego pliku .htaccess, aby zablokować indeksowanie katalogów. Oznacza to, że jeśli ktoś spróbuje wyświetlić katalog bez pliku index, nie zobaczy listy plików.
- Kod sprawdza, czy twój plik .htaccess może być edytowany.
- Jeśli tak, odczytuje aktualną zawartość pliku.
- Następnie dodaje regułę, która mówi
Options -Indexes
, co zatrzymuje wyświetlanie list katalogów. - Ta reguła jest dodawana tylko wtedy, gdy nie jest już obecna, co zapobiega duplikatom.
Funkcja jest uruchamiana, gdy aktywujesz swój motyw, co zapewnia automatyczne dodanie reguły bez potrzeby wykonywania jakichkolwiek ręcznych działań.
Kod
// Function to add .htaccess rules to block directory indexing
function wp_dudecom_block_directory_indexing() {
// Get the path to the .htaccess file
$htaccess_file = ABSPATH . '.htaccess';
// Check if the .htaccess file is writable
if (is_writable($htaccess_file)) {
// Read the current contents of the .htaccess file
$current_rules = file_get_contents($htaccess_file);
// Define the rules to block directory indexing
$block_indexing_rules = "\n# BEGIN Block Directory Indexing\nOptions -Indexes\n# END Block Directory Indexing\n";
// Check if the rules are already present
if (strpos($current_rules, 'BEGIN Block Directory Indexing') === false) {
// Append the rules to the .htaccess file
file_put_contents($htaccess_file, $current_rules . $block_indexing_rules);
}
}
}
// Hook the function to run when the theme is activated
add_action('after_switch_theme', 'wp_dudecom_block_directory_indexing');
Instrukcja
Lokalizacja pliku: functions.php lub plik niestandardowej wtyczki
Wymagania wstępne:
- Podstawowa znajomość struktury plików WordPressa.
- Dostęp do plików instalacji WordPressa za pomocą FTP lub menedżera plików.
- Upewnij się, że twój serwer obsługuje pliki .htaccess (typowe dla serwerów Apache).
Kroki wdrożenia:
- Otwórz plik
functions.php
swojego motywu WordPress lub stwórz nowy plik niestandardowej wtyczki, jeśli wolisz oddzielić motyw od funkcjonalności. - Skopiuj i wklej podany kod do pliku.
- Zapisz zmiany w pliku.
- Aktywuj swój motyw WordPress, jeśli nie jest już aktywny. To spowoduje wywołanie funkcji dodającej regułę blokującą indeksowanie katalogów do twojego pliku .htaccess.
- Zweryfikuj, czy reguła została dodana, sprawdzając plik .htaccess znajdujący się w katalogu głównym twojej instalacji WordPress. Powinieneś zobaczyć dodane następujące linie:
# BEGIN Blokada Indeksowania Katalogów
Options -Indexes
# END Blokada Indeksowania Katalogów
- Jeśli napotkasz jakiekolwiek problemy, upewnij się, że plik .htaccess jest zapisywalny i że twój serwer obsługuje pliki .htaccess.
Jeśli potrzebujesz dalszej pomocy w tej implementacji lub wymagasz bardziej zaawansowanej funkcjonalności, rozważ skontaktowanie się z wp-dude.com w celu uzyskania fachowej pomocy.