Pregunta

¿Alguien sabe cómo modificar los enlaces canónicos Wordpress añadir un parámetro de URL personalizada?

Tengo un sitio de Wordpress con una página que consulta una base de datos independiente (no Wordpress). Pasé el parámetro URL "pubID" para visualizar libros individuales y está trabajando bien.

Ejemplo: http://www.uglyducklingpresse.org/catalog/ explorar / artículo /? pubID = 63

Sin embargo, las páginas de los libros individuales no se muestran correctamente en Google -?. PubID el parámetro se quitó

Creo que tal vez esto se debe a que todas las páginas de elementos tienen la misma etiqueta auto-generado "canónica" enlace URL en la fuente -. Uno con el parámetro "pubID" despojado

Ejemplo: rel enlace = 'canónica' href = ' http: //www.uglyducklingpresse .org / catálogo / navegar / artículo / '

¿Hay una manera de editar quizá .htaccess para agregar un parámetro de URL personalizada a Wordpress, por lo que el parámetro no es despojado a cabo por los enlaces permanentes y los enlaces "canónicos"?

O tal vez hay otra solución ... Gracias por cualquier idea!

¿Fue útil?

Solución

Usted debe ser capaz de reemplazar la función de acción rel_canonical de Wordpress con su propia función en la que (cuando sus condiciones son se encuentran) se crea un vínculo canónico añadiendo la variable de cadena de consulta. El siguiente debería funcionar, aunque es probable que necesite cambiar las condiciones para satisfacer sus necesidades.

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();
    }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top