viernes, 24 de febrero de 2017

Canonical Prestashop 1.6 incluye https (SOLUCIONADO)

Os dejo este aporte “Canonical Prestashop 1.6 incluye https” para todos aquellos que quieran añadir las metas Canonical en tiendas Prestashop con certificado seguro https o con páginas normales http

CANONICAL PARA PÁGINAS HTTPS EN PRESTASHOP (probado en v. 1.6):

Abrir archivo header.tpl del theme y añadir lo siguiente justo antes del </head>:


<!-- canonical -->
{if $page_name == 'index' or $page_name == 'search'}
<link rel="canonical" href="{$base_dir_ssl}" />
{elseif $page_name == 'category' or $page_name == 'best-sales' or $page_name == 'cart'
or $page_name == 'discount' or $page_name == 'manufacturer' or $page_name == 'new-products'
or $page_name == 'prices-drop'}
<link rel="canonical" href="{$base_dir_ssl}
{$request_uri|substr:1|regex_replace:'/\/(.*)/':''|regex_replace:'/\?(.*)/':''}" />
{else}
<link rel="canonical" href="{$base_dir_ssl}{$request_uri|substr:1}" />
{/if}
<!-- /canonical -->

Atención, si habeis cambiado las palabras en Preferencias / SEO + URL,  y por ejemplo en lugar de "search" habeis puesto "buscar", tenéis que sustituir la palabra en el código de arriba para que funcione, lo mismo para las demás palabras, category por categoria, etc.

CANONICAL PARA PÁGINAS HTTP EN PRESTASHOP (probado en v. 1.6):


 <!-- canonical -->
{if $page_name == 'index' or $page_name == 'search'}
<link rel=”canonical” href=”{$base_dir}” />
{elseif $page_name == 'category' or $page_name == 'best-sales' or $page_name == 'cart'
or $page_name == 'discount' or $page_name == 'manufacturer' or $page_name == 'new-products'
or $page_name == 'prices-drop'}
<link rel="canonical" href="{$base_dir_ssl}
{$request_uri|substr:1|regex_replace:'/\/(.*)/':''|regex_replace:'/\?(.*)/':''}" />
{else}
<link rel="canonical" href="{$base_dir_ssl}{$request_uri|substr:1}" />
{/if}
<!-- /canonical -->

Fijaros que la única diferencia es la etiqueta {$base_dir} para páginas http, y la etiqueta {$base_dir_ssl} para las páginas con certificado seguro https. Esta etiqueta lo que hace es generar http:// o https:// al comienzo de la URL.

Hay que tener cuidado con las tiendas multi-idioma, ya que generan muchisimos duplicados. Si no vendeis casi ningún producto al extranjero os recomiendo que dejeis solo un idioma.

Canonical Prestashop 1.6 incluye https (SOLUCIONADO)


¿Para que sirve la etiqueta rel=”canonical”?
Desde hace unos 4 años su uso es necesario para avisar a Google y demás buscadores de qué página es la que debe de indexar en caso de encontrar un contenido duplicado.

Por ejemplo si tienes una Web no Responsive, y tiene versión PC y versión móvil, en la versión PC debes añadir la etiqueta canonical apuntando a la URL de la versión PC, y en la versión móvil tienes que crear la etiqueta rel=”canonical” con la URL de la versión PC, de esta forma no pierdes la fuerza por culpa de la versión móvil. Asi mismo en la versión PC tienes que crear la etiqueta alternate para redirigir las páginas de PC a móviles si entran con este dispositivo, el código sería algo asi:

<link rel=”alternate” media=”only screen and (max-width: 640px)” href=”https://www.todoenlaces.com/m-index.php” />

Esta etiqueta dice que las pantallas de 640px o inferiores vayan automáticamente a la URL: https://www.todoenlaces.com/m-index.php

Si se va a realizar una web nueva recomendamos siempre que sea con un diseño Web Responsive, que hace que se adapte automáticamente a cualquier dispositivo evitando conflictos de duplicados, etc.

Cualquier duda comentarnos. Si os ha sido útil este tutorial puedes compartirlo en las redes sociales o hacer un “me gusta”.
Noticias Anteriores
Primera

3 comentarios:

  1. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  2. Buenas, agradecer en primer lugar este tutorial. Mi duda viene cuando escribes:

    "Atención, si habeis cambiado las palabras en Preferencias / SEO + URL, y por ejemplo en lugar de "search" habeis puesto "buscar", tenéis que sustituir la palabra en el código de arriba para que funcione, lo mismo para las demás palabras, category por categoria, etc."

    Te refieres con esto a la url amigable de la página buscar por ejemplo, al nombre de la página o al título de la misma?
    Para la página buscar por ejemplo, tengo la palabra search que viene por defecto en Prestashop 1.6, pero tengo Buscar en título y url.
    Gracias de antemano.
    Un saludo.

    ResponderEliminar
  3. Buenos días Portimafia, no se trata de la URL amigable. Tan solo tienes que fijarte que has cambiado con respecto al Prestashop original en la pestaña Preferencias / SEO + URL, si no lo has tocado el código tal cual debería de funcionar.

    ResponderEliminar