Eliminar canonical de Wordpress

Estado
No está abierto para más respuestas.

manumrt

Piedra
Usuario de Piedra
Mensajes
36
Puntuación de reacción
0
Buenas tardes a todos!


A ver si me pueden ayudar con esto, como siempre, acudo a los profesionales ;)

Tengo una web en Wordpress y automáticamente me crea dos canonicals, una con la url de la home y un shortlink de google.
Como se sitúa la primera es lo que me detecta Google. Ningun plugin que uso se superpone a estos canonicals.

He leido que hay alguna versión de Wordpress que tiene este fail...

Alguna solución please??

Mil gracias
 

lobogris

Platino
Usuario de Bronce
Mensajes
1,537
Puntuación de reacción
0
No entiendo cual es tu error, si puedes poner una captura mejor, pero te digo:

Para eliminar el rel canonical (lo cual no tiene ningún sentido):

PHP:
remove_action( 'wp_head', 'rel_canonical' ); //quita el rel canonical
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head' );//quita rel next y rel prev

y para eliminar el shortlink al que Wordpress suele asignar el link corto ya sea de wp.me o tipo http://mi-web.com/p?=123

PHP:
remove_action( 'wp_head', 'wp_shortlink_wp_head' );

El código completo quedaría así:

PHP:
function head_cleanup() {

    remove_action( 'wp_head', 'rel_canonical' ); //quita el rel canonical
    remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head' );//quita rel next y rel prev
    remove_action( 'wp_head', 'wp_shortlink_wp_head' );

}
add_action( 'init', 'head_cleanup' );


Saludos
 

manumrt

Piedra
Usuario de Piedra
Mensajes
36
Puntuación de reacción
0
No entiendo cual es tu error, si puedes poner una captura mejor, pero te digo:

Para eliminar el rel canonical (lo cual no tiene ningún sentido):

PHP:
remove_action( 'wp_head', 'rel_canonical' ); //quita el rel canonical
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head' );//quita rel next y rel prev

y para eliminar el shortlink al que Wordpress suele asignar el link corto ya sea de wp.me o tipo http://mi-web.com/p?=123

PHP:
remove_action( 'wp_head', 'wp_shortlink_wp_head' );

El código completo quedaría así:

PHP:
function head_cleanup() {

    remove_action( 'wp_head', 'rel_canonical' ); //quita el rel canonical
    remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head' );//quita rel next y rel prev
    remove_action( 'wp_head', 'wp_shortlink_wp_head' );

}
add_action( 'init', 'head_cleanup' );


Saludos

El asunto es que WP me ha puesto en todas las páginas el mismo canonical: URL DE LA HOME!!!

Por eso quiero quitarlo
 

lobogris

Platino
Usuario de Bronce
Mensajes
1,537
Puntuación de reacción
0
El asunto es que WP me ha puesto en todas las páginas el mismo canonical: URL DE LA HOME!!!

Por eso quiero quitarlo
Pues lo más probable es que sea la plantilla si me dices que un plugin no puede ser... puedes complementar lo anterior con esto, así lo quitas y lo vuelves a añadir ya que la url canónica se supone es bastante importante para el SEO

PHP:
function new_rel_canonical() {
    
    global $wp_the_query;
    
    if ( !is_singular() ) 
        return;

    if ( !$id = $wp_the_query->get_queried_object_id() )
        return;

    $link = get_permalink($id);
    echo "\t<link rel=\"canonical\" href=\"$link\">\n";

}

    add_action( 'wp_head', 'new_rel_canonical' );

Pd: Ambos códigos deberías añadirlos en functions.php u otro archivo que se cargue en functions
 
Estado
No está abierto para más respuestas.
Arriba