Come cambiare lo slug autore con codice PHP o plugin.

Condividi
Condividi su linkedin
LinkedIn
Condividi su facebook
Facebook
Condividi su twitter
Twitter
Condividi su whatsapp
WhatsApp
Condividi
Condividi su linkedin
Condividi su facebook
Condividi su twitter
Condividi su whatsapp
Come cambiare lo slug autore su WordPress con codice PHP o plugin. Per sicurezza e SEO è importante cambiare lo slug classico author.
Cosa troverai in questo articolo

Quando scrivi un articolo nel tuo Blog o quando qualche utente lo fa per te, automaticamente si crea un percorso URL, anche detto SLUG, che porta ad un archivio relativo allo storico dei post pubblicati.

Questo SLUG, di solito è /author/nickname/ dove per nickname s’intende una delle possibili tipologie di identificazione per quell’utente.

Ora, spesso capita che quel nickname sia riconducibile anche allo user di accesso al backend di WordPress ma anche che, lato SEO, possa creare non pochi problemi.

Diventa quasi vitale, dunque, modificare SLUG e nickname visualizzati e la bella notizia è che possiamo farlo con ben due opzioni disponibili; la prima prevede l’uso di un plugin mentre la seconda, due semplici righe di codice per risolvere alla grande il problema 😉 

SLUG autore su WordPress. Cos'è?

In generale, lo SLUG autore è il percorso (URL) della pagina dedicata ad un utente registrato sul nostro Sito Web e, nel caso di articoli pubblicati, anche di quella relativa al proprio archivio.

Questo SLUG è composto da un prefisso WordPress standard quale /author/ seguito dal nome dell’utente.

Ma andiamo con ordine …

Creazione di un nuovo utente/autore su WordPress

Prima di ogni possibile operazione, ovviamente, è necessario far registrare l’utente sul Sito Web o creare manualmente l’utenza sul nostro backend andando su Utenti > Aggiungi nuovo.

SLUG Autore WordPress | Creazione nuovo utente/autore
SLUG Autore WordPress | Creazione nuovo utente/autore

A questo punto dovrai inserire le seguenti informazioni:

  • Nome utente
    Lo username che servirà a WordPress come identificativo personale ed a te come username di accesso all’area riservata;
  • Email
    L’indirizzo di posta elettronica dell’utente che servirà per qualsiasi comunicazione con l’amministratore del Sito Web; 
  • Nome
    Ovviamente il nome proprio dell’utente;
  • Cognome
    Ovviamente il suo;
  • Password
    Una password di accesso che sia molto forte e mai banale;
  • Ruolo
    Autore se pensi che l’utente scriverà sul blog, altrimenti lascia pure sottoscrittore.

Modifica di un nuovo utente/autore su WordPress

Una volta creato l’utente, potrai decidere di modificarlo in ogni momento andando sempre da backend su Utenti > Tutti gli utenti > Modifica.

La pagina contiene tutte le info impostate precedentemente ed alcuni campi interessanti per la questione SLUG Autore.

SLUG Autore WordPress | Opzioni nuovo utente/autore
SLUG Autore WordPress | Opzioni nuovo utente/autore

Come vedi il Nome utente scelto precedentemente (che servirà anche per il login) non è modificabile! mentre puoi tranquillamente cambiare Nome, Cognome, Email e Nickname.

Inoltre, puoi decidere come l’utente verrà identificato sul Blog tramite il campo Nome pubblico da visualizzare. Questo menu a tendina, ti mostrerà molte opzioni fra cui (nel nostro caso di esempio) Prova, Mario, Rossi, Mario Rossi e Rossi Mario.

Ora, tieni bene a mente i campi Nome utente, in questo caso Prova (non modificabile) e Nome pubblico da visualizzare, in questo caso Mario Rossi; ci torneremo a breve.

Identificazione utente/autore sul Blog di WordPress

Molto bene, il nuovo utente/autore Mario Rossi ha finalmente pubblicato un nuovo articolo sul nostro amato Blog (dai su, come esempio ho usato quello standard di WordPress).

SLUG Autore WordPress | Articolo utente/autore
SLUG Autore WordPress | Articolo utente/autore

L’articolo si chiama Ciao mondo!, ha all’attivo un commento ed è stato inserito all’interno della categoria Argomento1.

L’autore? Mario Rossi, naturalmente!

Il nome visualizzato dell’autore è, in questo caso, Mario Rossi. Ricordi prima? Abbiamo deciso di usare questa visualizzazione per identificare l’autore. Qualora infatti avessimo scelto l’opzione (ad esempio) Rossi Mario, nel dettaglio dell’articolo sarebbe comparso quel nome.

Abbiamo capito, quindi, che il campo Nome pubblico da visualizzare è quello che determina l’identificazione dell’utente sul Blog ed è assolutamente modificabile. Ottimo!

Lo SLUG archivio utente/autore sul Blog di WordPress

Questo identificativo, tuttavia è anche cliccabile, ovvero ha un anchor text (link) che rimanda alla pagina autore dove sono visualizzati tutti i suoi articoli pubblicati; in gergo, Archivio Autore.

Questo collegamento non è nient’altro che una semplice URL composta da più parole che su WordPress definiscono quello che si chiama SLUG.

Nel nostro caso: https://miositoweb.it/author/prova/

Cosa noti qui? Beh, per prima cosa si può vedere che WordPress ha aggiunto la parola /author/ tra l’indirizzo URL del nostro Sito Web e il nome dell’autore, ma non solo; come puoi vedere il nome dell’autore non è più Mario Rossi, bensì … Prova.

Dunque Prova, l’abbiamo visto prima … ah sì! E’ il Nome utente che abbiamo scelto all’inizio, che viene usato anche per il login e che non è modificabile.

SLUG autore su WordPress. Perché modificarlo?

Potresti dirmi, chissenefrega 🙂 In realtà come accennato all’inizio, questo è un problema, anzi sono due: sicurezza e SEO.

Cambia lo SLUG Autore per sicurezza

Si ok, te l’ho già detto ma ripeterlo fa sempre bene. Il Nome Utente viene usato anche per l’accesso (login) all’area di amministrazione di WordPress pertanto, offrire su un piatto d’argento l’opportunità agli hacker di dover faticare solo al 50%, non è cosa buona e giusta.

Puoi risolvere la cosa in prima battuta usando accorgimenti di sicurezza per nascondere la pagina del login e poi, in secondo luogo, evitando di usare e visualizzare il Nome utente nel Sito Web e nella SERP di Google.

Quindi NO!, Non usare mai il Nome utente!

Cambia lo SLUG Autore per la SEO

Ai fini SEO è molto importante che vi sia una corrispondenza precisa tra chiave di ricerca usata, titolo heading H1 della pagina, meta titolo SEO, meta descrizione SEO ed URL di un qualsiasi tipo di post WordPress sia esso pagina, articolo, argomento, tag, autore ecc.

Nel caso specifico e tornando a bomba, analizziamo la URL e i dati Meta SEO del nostro autore.

Pagina archivio autore:

  • URL: https://nostrositoweb.it/author/prova/
  • Titolo H1: Mario Rossi;
  • Meta Titolo: se fatto bene potrebbe essere del tipo Mario Rossi, autore sul Blog di …
  • Meta Descrizione: se fatta bene potrebbe essere del tipo Mario Rossi, autore sul Blog di …

Cosa si evince da questo? Al netto di aver fatto una buona SEO ON-Page e quindi titoli e descrizioni perfette, NON vi è corrispondenza tra la chiave primaria della pagina che è, in questo caso è il nome dell’autore Mario Rossi, e lo SLUG autore della URL /prova/.

Alla SEO ed a Google non piace!!

SLUG Autore WordPress | Archivio utente/autore
SLUG Autore WordPress | Archivio utente/autore

SLUG autore su WordPress. Come modificarlo?

Tranquillo, la bella notizia è che la questione si può risolvere e per di più, non c’è ombra di quella cattiva 🙂 Le soluzioni sono due, una vede l’uso di un plugin e l’altra l’implementazione di due righe di codice PHP ben assestate.

La differenza? Entrambe le soluzioni sono valide e funzionali, tuttavia, per una questione legata all’ottimizzazione di un Sito Web, consiglio sempre di non usare e abusare di software di terze parti, in primo luogo per una questione di sicurezza/manutenzione e poi per evitare ulteriore peso nel computo totale del caricamento del Sito Web.

Te le mostro entrambe, scegli tu quella che ritieni più nelle tue corde.

Cambia lo SLUG autore con un plugin

Il plugin si chiama Edit Author Slug facile da istallare ancor più da utilizzare.

Come procedura vuole, va su Plugin > Aggiungi nuovo. Nel campo di ricerca scrivi Edit Author Slug e, una volta trovato, clicca su Installa > Attiva.

Una volta a posto, apri le opzioni cliccando su Impostazioni > Edit Author Slug.

SLUG Autore WordPress | Edit Author Slug Plugin
SLUG Autore WordPress | Edit Author Slug Plugin

Nel campo Author Base scrivi il nuovo prefisso che avrà il tuo SLUG Autore; in questo caso, essendo il test in italiano e senza troppa creatività ho scelto la parola autore.

A questo punto la nuova URL sarà https://miositoweb/autore/prova/ ma … ancora non ci siamo!

Serve cambiare anche prova. Per farlo ti basterà selezionare una delle opzioni del menu a tendina Author Slug Structure impostandolo, ad esempio, come suggerito, ovvero firstname-lastname.

A questo punto il tuo nuovo e perfetto SLUG sarà https://miositoweb/autore/mario-rossi/ … perfect!

Cambia lo SLUG autore con un PHP

L’utilizzo del codice PHP non è difficile e non ha controindicazioni sulla velocità del Sito Web. Tuttavia sono necessarie alcune condizioni fondamentali.

  • Devi avere un minimo di skill tecnico;
  • Devi avere accesso al tuo FTP;
  • Devi avere un tema figlio installato;
  • Devi avere accesso al file functions.php.

Assumiamo che tu le soddisfi tutte (nel caso chiedimi pure), quello che devi fare è semplicemente aprile il file functions.php, copiare questo codice ed incollarlo così com’è.

Per comodità e per darti una visione più chiara, su questo articolo, ti divido in due il codice.

PHP in functions.php per la base autore

La prima parte del codice serve per “costruire” una nuova opzione nel pannello di controllo Permalink di WordPress in modo di permetterti di poter scegliere e scrivere la nuova base autore che preferisci.

Senza codice PHP iniettato nel file functions.php, il pannello si presenta così …

SLUG Autore WordPress | Permalink standard senza codice PHP
SLUG Autore WordPress | Permalink standard senza codice PHP

Come vedi le opzioni offerte sono quelle standard che riguardano categorie e tag del blog. Aggiungiamo, adesso, il seguente codice nel file functions.php del tuo tema child.

				
					/* CAMBIA LA BASE AUTORE */
function bridweb_author_base_rewrite() {
    global $wp_rewrite;
    $author_base_db = get_option( 'lwp_author_base' );
    if ( !empty( $author_base_db ) ) {
        $wp_rewrite->author_base = $author_base_db;
    }
}
add_action( 'init', 'bridweb_author_base_rewrite' );

function bridweb_author_base_render_field() {
    global $wp_rewrite;
    printf(
        '<input name="lwp_author_base" id="lwp_author_base" type="text" value="%s" class="regular-text code">',
        esc_attr( $wp_rewrite->author_base )
    );
}

function bridweb_author_base_add_settings_field() {
    add_settings_field(
        'lwp_author_base',
        esc_html__( 'Base autori' ),
        'bridweb_author_base_render_field',
        'permalink',
        'optional',
        array( 'label_for' => 'lwp_uthor_base' )
    );
}
add_action( 'admin_init', 'bridweb_author_base_add_settings_field' );

function bridweb_author_base_update() {
    $author_base_db = get_option( 'lwp_author_base' );

    if ( isset( $_POST['lwp_author_base'] ) &&
        isset( $_POST['permalink_structure'] ) &&
        check_admin_referer( 'update-permalink' )
    ) {
        $author_base = sanitize_title( $_POST['lwp_author_base'] );

        if ( empty( $author_base ) ) {
            add_settings_error(
                'lwp_author_base',
                'lwp_author_base',
                esc_html__( 'Base autori non valida.' ),
                'error'
            );
        } elseif ( $author_base_db != $author_base ) {
            update_option( 'lwp_author_base', $author_base );
        }

    }
}
add_action( 'admin_init', 'bridweb_author_base_update' );
				
			

Adesso, dopo aver salvato il file e ricaricato la pagina Permalink, dovresti vedere un nuovo campo Base autori che ti permetterà di scegliere ed inserire a mano il nome per il prefisso del tuo SLUG autore

SLUG Autore WordPress | Permalink standard con codice PHP
SLUG Autore WordPress | Permalink standard con codice PHP

PHP in functions.php per lo SLUG autore

La seconda parte del codice serve per “costruire” una nuova opzione nel pannello delle Opzioni Utente di WordPress in modo di permetterti di poter scegliere e scrivere il nuovo identificativo che preferisci.

Senza codice PHP iniettato nel file functions.php, il pannello si presenta così …

SLUG Autore WordPress | Pannello utente standard senza codice PHP
SLUG Autore WordPress | Pannello utente standard senza codice PHP

Come vedi le opzioni offerte sono quelle standard che riguardano ruolo, nome, cognome, nickname e nome pubblico visualizzato. Aggiungiamo, adesso, il seguente codice nel file functions.php del tuo tema child.

				
					/* CAMBIA LO SLUG AUTORE */
function bridweb_user_edit_ob_start() {
    ob_start();
}
add_action( 'personal_options', 'bridweb_user_edit_ob_start' );

function bridweb_insert_nicename_input( $user ) {
    $content = ob_get_clean();

    $regex = '/<tr(.*)class="(.*)\buser-user-login-wrap\b(.*)"(.*)>([\s\S]*?)<\/tr>/';

    $nicename_row = sprintf(
        '<tr class="user-user-nicename-wrap"><th><label for="user_nicename">%1$s</label></th><td><input type="text" name="user_nicename" id="user_nicename" value="%2$s" class="regular-text" />' . "\n" . '<span class="description">%3$s</span></td></tr>',
        esc_html__( 'Nicename' ),
        esc_attr( $user->user_nicename ),
        esc_html__( 'Deve essere unico.' )
    );

    echo preg_replace( $regex, '\0' . $nicename_row, $content );
}
add_action( 'show_user_profile', 'bridweb_insert_nicename_input' );
add_action( 'edit_user_profile', 'bridweb_insert_nicename_input' );

function bridweb_profile_update( $errors, $update, $user ) {

    if ( !$update ) return;

    if ( empty( $_POST['user_nicename'] ) ) {
        $errors->add(
            'empty_nicename',
            sprintf(
                '<strong>%1$s</strong>: %2$s',
                esc_html__( 'Errore' ),
                esc_html__( 'Per favore, inserisci un Nicename.' )
            ),
            array( 'form-field' => 'user_nicename' )
        );
    } else {
        $user->user_nicename = $_POST['user_nicename'];
    }
}
add_action( 'user_profile_update_errors', 'bridweb_profile_update', 10, 3 );
				
			

Adesso, dopo aver salvato il file e ricaricato la pagina Opzioni utente, dovresti vedere un nuovo campo Nicename che ti permetterà di scegliere ed inserire a mano l’identificativo per il nome del tuo SLUG autore.

SLUG Autore WordPress | Pannello utente standard con codice PHP
SLUG Autore WordPress | Pannello utente standard con codice PHP

Conclusioni

Dai, semplice no?!

Ribadisco il mio consiglio, ovvero quello di usare il codice PHP iniettato nel file functions.php ma, come ho detto, scegli tu quello più consono alle tue conoscenze tecniche.

Nel caso, non esitare a chiedermi, ti aiuterò volentieri a cambiare correttamente lo SLUG autore del tuo Blog.

Condividi su linkedin
Condividi su facebook
Condividi su twitter
Condividi su whatsapp
Gian Luca Partengo

Gian Luca Partengo

Professionista del Web e del Marketing da oltre 20 anni. Ha lavorato per importanti Agenzie e Aziende italiane e ha creato e seguito passo a passo il Brand di numerosi Clienti. Oggi sviluppa progetti altamente professionali a partire da un'analisi sullo stato di salute di un Sito Web e della sua SEO Organica, fornendo anche consulenza a privati e aziende.

Potrebbero Interessarti anche ...

MAIN PARTNERS

Get in Touch

Ci sono molti modi per iniziare una conoscenza o rimanere in contatto e BRiDWEB ti mette a disposizione i migliori: modulo di contatto, e-mail, WhatsApp o chiamata. Scegli tu quale usare.