Come rimuovere le pagine autore?

22 ago 2017, 07:11:51
Visualizzazioni: 48.1K
Voti: 26

Ho sottomesso il mio sito a Google e ora la pagina autore appare nei risultati di ricerca.

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

Come posso impedire che il mio nome utente e quello degli altri autori appaiano nei risultati di ricerca?

Sarebbe meglio disabilitare completamente il percorso "/author/" poiché non è un blog ma un sito di prodotti (contiene solo pagine).

Ho fatto una ricerca e ho visto che ci sono plugin per fare questo, ma preferirei non installare un plugin (a volte non vengono aggiornati) se c'è un altro modo, ma lo farò se necessario.

Ho anche cercato nel codice sorgente delle pagine e non ho visto alcun link alla pagina autore.

5
Commenti

perché non rimuovi i link al nome dell'autore dai post?

inarilo inarilo
22 ago 2017 10:07:00

Ho seguito il link alla pagina dell'autore indicato e dice che non ci sono post. Quindi non so da dove provenga il link.

1.21 gigawatts 1.21 gigawatts
22 ago 2017 12:29:38

So che non stai cercando un plugin, ma eccone uno per chi lo sta cercando: https://wordpress.org/plugins/disable-author-archives/

Flimm Flimm
29 ago 2019 19:48:03

Puoi anche cambiare /author/myusername con qualcos'altro usando questo plugin - https://wordpress.org/plugins/edit-author-slug/

Tiago Peres Tiago Peres
15 lug 2022 23:49:39
Tutte le risposte alla domanda 4
4
24

La risposta precedente è valida, ma se si reindirizza alla home page, dovrebbe specificare uno stato 301 e terminare dopo.

add_action('template_redirect', 'my_custom_disable_author_page');

function my_custom_disable_author_page() {
    global $wp_query;

    if ( is_author() ) {
        // Reindirizza alla home page, imposta lo stato a 301 (reindirizzamento permanente).
        // La funzione predefinita utilizza un reindirizzamento temporaneo 302.
        wp_redirect(get_option('home'), 301); 
        exit; 
    }
}

Documentazione di wp_redirect() https://developer.wordpress.org/reference/functions/wp_redirect/

19 mar 2019 06:05:35
Commenti

Attualmente utilizzo il plugin Yoast SEO per rimuovere le pagine degli autori. Basta modificare l'opzione per non scansionare/indicizzare quella tassonomia e il gioco è fatto. Non è necessario alcun codice.

David Hobs David Hobs
17 dic 2019 22:26:03

Questa non è una buona soluzione per nascondere le pagine degli autori. Se indovini il login dell'autore, verrai reindirizzato, ma se inserisci uno slug di autore inesistente, otterrai un errore 404. L'approccio corretto dovrebbe reindirizzare o restituire 404 in tutti i casi.

Qrzysio Qrzysio
18 set 2022 23:35:20

Perché global $wp_query; ?

Ronald Ronald
14 set 2023 04:36:48

Affinché la richiesta di shortlink /?author=1 venga gestita allo stesso modo, la priorità di add_action dovrebbe essere impostata più bassa del valore predefinito 10. In questo modo verrà eseguita prima dell'hook predefinito redirect_canonical e quindi non verrà saltata da esso. Senza questa modifica, tale shortlink potrebbe rivelare il nome dell'autore attraverso il reindirizzamento a /author/nomeautore (che poi verrà reindirizzato alla home per il codice che sto commentando).

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

Puoi anche aggiungere il reindirizzamento direttamente nel template dell'autore. Nel tuo tema WordPress, modifica il file author.php per reindirizzare gli utenti alla tua homepage. Se il tuo tema non ha un template per le pagine degli autori, crea un file chiamato author.php.

author.php: (Utilizzando la funzione header di PHP)

<?php
//Reindirizza le pagine degli autori alla homepage
header("HTTP/1.1 301 Spostato Permanentemente");
header("Location: /");
die(); // evita ulteriore elaborazione PHP
//Fine del codice

La parte die() serve per evitare che chiunque utilizzi un client che NON segue l'header di reindirizzo veda il contenuto della pagina, dato che WordPress continuerebbe a costruire la pagina originale dell'autore e inviare la sua risposta al client che la richiede.


AGGIORNAMENTO: WordPress ha alcune funzioni integrate per gestire i reindirizzamenti: wp_redirect() e wp_safe_redirect(). wp_redirect() accetta una stringa come posizione di reindirizzamento e un intero come tipo di reindirizzamento (302 è il valore predefinito). wp_safe_redirect() è uguale a wp_redirect() tranne per il fatto che verifica che la posizione di reindirizzamento sia presente in un elenco di host consentiti.

author.php: (Utilizzando la funzione wp_safe_redirect di WordPress)

<?php
//Reindirizza le pagine degli autori alla homepage con la funzione di reindirizzamento di WordPress
wp_safe_redirect( get_home_url(), 301 );
exit;
//Fine del codice

Ulteriori informazioni

27 mar 2019 17:56:37
0

Puoi disabilitare l'accesso alle pagine degli autori aggiungendo questo snippet a functions.php:

// Disabilita l'accesso alla pagina autore
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);
        // Reindirizza alla homepage
        // wp_redirect(get_option('home'));
    }
}
1 ott 2018 12:24:32
0

Puoi disabilitare l'accesso alle pagine degli autori aggiungendo il seguente codice nel file 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