Domanda

Qualcuno sa come modificare i link canonici Wordpress per aggiungere un parametro URL personalizzato?

Ho un sito Wordpress con una pagina che interroga un database separato (non Wordpress). Ho superato il parametro URL "PubID" per visualizzare singoli libri e sta funzionando OK.

Esempio: http://www.uglyducklingpresse.org/catalog/ sfogliare / item /? pubid = 63

Ma le singole pagine del libro non vengono visualizzati correttamente in Google -?. Il parametro pubid è spogliato fuori

Penso che forse questo è perché tutte le pagine di articoli hanno lo stesso tag link URL "canonical" auto-generata nella fonte -. Uno con il parametro "PubID" spogliato

Esempio: link rel = 'canonical' href = ' http: //www.uglyducklingpresse .org / catalogo / sfogliare / item / '

C'è un modo per modificare forse .htaccess aggiungere un parametro URL personalizzato per Wordpress, in modo che il parametro non viene spogliato dai permalink e le "canoniche" link?

O forse c'è un'altra soluzione ... Grazie per tutte le idee!

È stato utile?

Soluzione

Si dovrebbe essere in grado di sostituire la funzione azione rel_canonical di Wordpress con la propria funzione in cui (quando le vostre condizioni sono meet) si crea un link canonico aggiungendo la variabile stringa di query. Il seguente dovrebbe funzionare, anche se avrete probabilmente bisogno di cambiare le condizioni per soddisfare le vostre esigenze.

remove_action('wp_head', 'rel_canonical');
add_action('wp_head', 'my_rel_canonical');

function my_rel_canonical() {
    if (is_page('item') && isset($_GET['pubID'])) {
        global $post;
        $link = get_permalink($post->ID) . '?pubID=' . absint($_GET['pubID']);
        echo "<link rel='canonical' href='$link' />\n";
    } else {
        rel_canonical();
    }
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top