Cum să eliminați paginile de autor?

22 aug. 2017, 07:11:51
Vizualizări: 48.1K
Voturi: 26

Am trimis site-ul meu către Google și acum pagina de autor apare în rezultatele căutării.

http://www.domain.com/author/myusername

Cum pot preveni ca numele meu și ale altor autori să apară în rezultatele căutării?

Ar fi cel mai bine să dezactivez complet calea "/author/" deoarece nu este un blog ci un site de produse (conține doar pagini).

Am făcut o căutare anterioară și am văzut că există plugin-uri pentru aceasta, dar aș prefera să nu instalez un plugin (uneori nu sunt actualizate) dacă există o altă metodă, dar o voi face dacă trebuie.

De asemenea, am căutat prin codul sursă al paginilor și nu am văzut niciun link către pagina de autor.

5
Comentarii

de ce nu eliminați link-urile cu numele autorilor din postări?

inarilo inarilo
22 aug. 2017 10:07:00

Am urmat linkul către pagina autorului listată și spune că nu există postări. Așadar, nu știu de unde provine linkul.

1.21 gigawatts 1.21 gigawatts
22 aug. 2017 12:29:38

Știu că nu cauți un plugin, dar iată unul pentru cei care caută: https://wordpress.org/plugins/disable-author-archives/

Flimm Flimm
29 aug. 2019 19:48:03

De asemenea, poți schimba /author/myusername în altceva folosind acest plugin - https://wordpress.org/plugins/edit-author-slug/

Tiago Peres Tiago Peres
15 iul. 2022 23:49:39
Toate răspunsurile la întrebare 4
4
24

Răspunsul de mai sus este bun, dar dacă redirecționezi către pagina principală, ar trebui să specifici un status 301 și să închei scriptul după aceea.

add_action('template_redirect', 'my_custom_disable_author_page');

function my_custom_disable_author_page() {
    global $wp_query;

    if ( is_author() ) {
        // Redirecționează către pagina principală, setează statusul la 301 redirecționare permanentă.
        // Funcția utilizează implicit 302 redirecționare temporară.
        wp_redirect(get_option('home'), 301); 
        exit; 
    }
}

Documentația wp_redirect() https://developer.wordpress.org/reference/functions/wp_redirect/

19 mar. 2019 06:05:35
Comentarii

În prezent folosesc Yoast SEO Plugin pentru a elimina paginile autorului. Doar schimbă opțiunea pentru a nu scana/indexa acea taxonomie și vei fi gata. Nu este necesar cod.

David Hobs David Hobs
17 dec. 2019 22:26:03

Aceasta nu este o soluție bună pentru ascunderea paginilor autorului. Dacă ghicești login-ul autorului, vei fi redirecționat, dar dacă introduci un slug de autor inexistent, vei primi o eroare 404. Abordarea corectă ar trebui să redirecționeze sau să returneze 404 în toate cazurile.

Qrzysio Qrzysio
18 sept. 2022 23:35:20

De ce global $wp_query; ?

Ronald Ronald
14 sept. 2023 04:36:48

Pentru ca cererea de scurtătură /?author=1 să fie tratată în același mod, prioritatea add_action ar trebui să fie setată mai mică decât valoarea implicită 10. Astfel, va fi executată înainte de hook-ul implicit redirect_canonical și nu va fi sărit de acesta. Fără această setare, o astfel de scurtătură va divulga numele autorului prin redirecționarea către /author/authorname (care apoi va fi redirecționată către pagina principală conform codului pe care îl comentez).

challet challet
21 apr. 2024 17:22:53
0
12

De asemenea, poți adăuga redirecționarea direct în template-ul autorului. În tema ta WordPress, editează fișierul author.php pentru a redirecționa utilizatorii către pagina principală. Dacă tema ta nu are un template pentru paginile de autor, creează un fișier numit author.php.

author.php: (Folosind funcția php header)

<?php
//Redirecționează paginile de autor către pagina principală
header("HTTP/1.1 301 Moved Permanently");
header("Location: /");
die(); // evită procesarea ulterioară a PHP
//Asta e tot

Partea cu die() este pentru a evita ca oricine folosește un client care NU urmează antetul de redirecționare să vadă conținutul paginii, deoarece WP ar continua să construiască pagina originală de autor și să trimită răspunsul către clientul care o solicită.


ACTUALIZARE: WordPress are câteva funcții integrate pentru gestionarea redirecționărilor: wp_redirect() și wp_safe_redirect(). wp_redirect() acceptă un șir ca locație de redirecționare și un întreg ca tip de redirecționare (302 este implicit). wp_safe_redirect() este la fel ca wp_redirect(), cu excepția faptului că se asigură că locația de redirecționare se află într-o listă de gazde permise.

author.php: (Folosind funcția WordPress wp_safe_redirect)

<?php
//Redirecționează paginile de autor către pagina principală cu funcția WordPress de redirecționare
wp_safe_redirect( get_home_url(), 301 );
exit;
//Asta e tot

Mai multe informații

27 mar. 2019 17:56:37
0

Puteți dezactiva accesul la paginile de autor adăugând acest fragment de cod în fișierul functions.php:

// Dezactivează accesul la pagina de autor
add_action('template_redirect', 'my_custom_disable_author_page');

function my_custom_disable_author_page() {
    global $wp_query;

    if ( is_author() ) {
        $wp_query->set_404();
        status_header(404);
        // Redirecționează către pagina principală
        // wp_redirect(get_option('home'));
    }
}
1 oct. 2018 12:24:32
0

Puteți dezactiva accesul la paginile de autor dacă adăugați următorul cod în fișierul functions.php:

add_action('template_redirect', 'my_custom_disable_author_page');

    function my_custom_disable_author_page() {
        global $wp_query;
        if ( is_author() ) {
            $wp_query->set_404();
            status_header(404);
        }
    }
27 mar. 2019 18:04:41