problem z indeksowaniem plików załaczników w WordPress

WordPress automatycznie tworzy wpis typu attachment, czyli „stronę załącznika” do każdego pliku dodawanego w media (grafiki, PDF itp.), nie ma możliwości wyłączyć tego mechanizmu, a może on powodować niepotrzebne indeksowanie stron załaczników, co jest częstym problemem SEO w WordPressie.

Nawet jeśli ten link nie występuje w treści, to istnieje technicznie i może być indeksowany przez wyszukiwarki (Google często je znajduje i traktuje jako „thin content”).

Co dają rozwiązania z przekierowaniem

Odpowiednie techniki pozwolą wykryć, że użytkownik lub robot próbuje wejść na taką stronę (is_attachment()), i przekierują go np. na stronę główną lub do wpisu nadrzędnego.

W takiej sytuacji możesz:

  1. zablokować ich wyświetlanie (redirect),
  2. usunąć je z indeksu SEO,
  3. nie tworzyć linków do nich w treści.

1. Przekierowanie wszystkich attachment pages na plik multimedialny lub stronę nadrzędną (SEO-safe)

Stosowane przez pluginy Yoast SEO lub All in One SEO.

All in One SEO ma opcję: „Przekieruj strony załączników do plików multimedialnych” lub „Usuń strony załączników z indeksowania”.

W panelu AIOSEO → Search Appearance → Media → Attachment Pages
Ustaw: Redirect Attachment URLs → To the Attachment File (lub „Do pliku załącznika”) lub Redirect Attachment URLs → To the Parent Post

To całkowicie eliminuje dostępność stron załączników w praktyce SEO i użytkowej. Nie będą się już indeksować.

2. Całkowite „zdezaktywowanie” renderowania attachment pages

Jeśli chcesz iść bardziej technicznie i nigdy nie renderować tych stron, możesz dodać taki kod:

function disable_attachment_pages_completely() {
    if (is_attachment()) {
        wp_redirect(home_url(), 301);
        exit;
    }
}
add_action('template_redirect', 'disable_attachment_pages_completely');

3. nie twórz linków w treści, obrazy dodawane do wpisów/stron:

  • w edytorze wpisu kliknij na obrazek,
  • w panelu po prawej stronie (Zakładka „Ustawienia”) znajdź opcję „Po kliknięciu” (lub „Linkowanie do”),
  • wybierz: Brak (None).

Ustawienie domyślnego „Link do: Brak” dla wszystkich nowych obrazków

Dodaj poniższy kod do pliku functions.php

function default_image_link_none() {
    $image_set = get_option( 'image_default_link_type' );
    if ( $image_set !== 'none' ) {
        update_option( 'image_default_link_type', 'none' );
    }
}
add_action( 'admin_init', 'default_image_link_none', 10 );

4. Blokada generowania stron załączników (attachment pages)

Jeśli chcesz też, by WordPress nie tworzył podstron typu …?attachment_id=123, możesz przekierować je np. do wpisu nadrzędnego lub na 404

function disable_attachment_pages() {
    if (is_attachment()) {
        global $post;
        if ($post && $post->post_parent) {
            wp_redirect(get_permalink($post->post_parent), 301);
        } else {
            wp_redirect(home_url(), 301);
        }
        exit;
    }
}
add_action('template_redirect', 'disable_attachment_pages');

Hope this helps and happy coding :)

Zobacz jeszcze

zyskać adres IP

adres IP domeny www.mydomain.com W terminalu (CMD / PowerShell / macOS Terminal) wpisz: dla Windows: nslookup www.mydomain.com macOS / Linux: dig www.mydomain.com Wynik pokaże coś...

aktualizacja strony w google

Kiedy przebudowujemy całą stronę internetową czy dodajemy większe zmiany w strukturze i treściach dobrze zaraz po ich opublikowaniu dać znać Google o zmianach. Najłatwiej i najszybciej...