Jump to content

Optimización SEO para Prestashop 1.4.x – Url con guiones bajos


Quico

Recommended Posts

Buenos días

He creado un tutorial sobre cómo optimizar vuestra tienda onlien para eliminar los guiones bajos en las URL de fabricantes.

Podéis echarle un vistazo aquí:

http://reinadepicas.wordpress.com/2014/01/10/optimizacion-seo-para-prestashop-1-4-url-con-guiones-bajos/

Espero que os sirva y si alguien sabe otra forma mejor de hacerlo, que me deje algún comentario.

¡Saludos!

Link to comment
Share on other sites

  • 1 year later...

Hola Quico,

 

Durante el día de ayer estuve intentando hacer lo que comentas en tu tutorial, pero sin éxito. No consigo que funcione.

 

Cuando hago lo que comentas, al hacer click en un fabricante accedes a una categoría. Me da que la orden que hay que añadir en el .htaccess no es correcta, pero no se ver el fallo.

 

A ver si me puedes echar una mano.

 

Muchas gracias.

Link to comment
Share on other sites

	public function getManufacturerLink($id_manufacturer, $alias = NULL, $id_lang = NULL)
	{
		if (is_object($id_manufacturer))
			return ($this->allow == 1) ? (_PS_BASE_URL_.__PS_BASE_URI__.$this->getLangLink((int)($id_lang)).(int)($id_manufacturer->id).'-marcas'.$id_manufacturer->link_rewrite) :
			(_PS_BASE_URL_.__PS_BASE_URI__.'manufacturer.php?id_manufacturer='.(int)($id_manufacturer->id));
		if ($alias)
			return ($this->allow == 1) ? (_PS_BASE_URL_.__PS_BASE_URI__.$this->getLangLink((int)($id_lang)).(int)($id_manufacturer).'-marcas'.$alias) :
			(_PS_BASE_URL_.__PS_BASE_URI__.'manufacturer.php?id_manufacturer='.(int)($id_manufacturer));
		return _PS_BASE_URL_.__PS_BASE_URI__.'manufacturer.php?id_manufacturer='.(int)($id_manufacturer);
	}

.Htaccess

RewriteRule ^-marcas([0-9]+)/([a-zA-Z0-9-]*) /manufacturer.php?id_manufacturer=$1 [QSA,L]

 

Gracias

Link to comment
Share on other sites

Hola de nuevo.

La función está mal. Cámbiala por esta y me dices si te funciona.

public function getManufacturerLink($id_manufacturer, $alias = NULL, $id_lang = NULL)
   {
        if (is_object($id_manufacturer))
                        return ($this->allow == 1) ? (_PS_BASE_URL_.__PS_BASE_URI__.$this->getLangLink((int)($id_lang)).'marcas-'.(int)($id_manufacturer->id).'/'.$id_manufacturer->link_rewrite) :
            (_PS_BASE_URL_.__PS_BASE_URI__.'manufacturer.php?id_manufacturer='.(int)($id_manufacturer->id     if ($alias)
            return ($this->allow == 1) ? (_PS_BASE_URL_.__PS_BASE_URI__.$this->getLangLink((int)($id_lang)).'marcas-'.(int)($id_manufacturer).'/'.$alias) :
            (_PS_BASE_URL_.__PS_BASE_URI__.'manufacturer.php?id_manufacturer='.(int)($id_manufacturer        return _PS_BASE_URL_.__PS_BASE_URI__.'manufacturer.php?id_manufacturer='.(int)($id_manufacturer   
    }
Link to comment
Share on other sites

Es muy sencillo: cambia la función por la que te he copiado en el mensaje anterior y en el .htaccess pon esta línea.

RewriteRule ^marcas-([0-9]+)/([a-zA-Z0-9-]*) /manufacturer.php?id_manufacturer=$1 [QSA,L]

No te limites a cambiar "-marcas" por "marcas-" porque hay más fallos. Si quiere que funcione, cambia completamente la función por la que te he pasado.

Link to comment
Share on other sites

Perdona, la he copiado mal. Prueba ahora:

public function getManufacturerLink($id_manufacturer, $alias = NULL, $id_lang = NULL)
{
	if (is_object($id_manufacturer))
		return ($this->allow == 1) ? (_PS_BASE_URL_.__PS_BASE_URI__.$this->getLangLink((int)($id_lang)).'marcas-'.(int)($id_manufacturer->id).'/'.$id_manufacturer->link_rewrite) :
		(_PS_BASE_URL_.__PS_BASE_URI__.'manufacturer.php?id_manufacturer='.(int)($id_manufacturer->id));
	if ($alias)
		return ($this->allow == 1) ? (_PS_BASE_URL_.__PS_BASE_URI__.$this->getLangLink((int)($id_lang)).'marcas-'.(int)($id_manufacturer).'/'.$alias) :
		(_PS_BASE_URL_.__PS_BASE_URI__.'manufacturer.php?id_manufacturer='.(int)($id_manufacturer));
	return _PS_BASE_URL_.__PS_BASE_URI__.'manufacturer.php?id_manufacturer='.(int)($id_manufacturer);
}
Link to comment
Share on other sites

Mira a lo que me refiero, quizá a ti te pase lo mismo en la web que has modificado este aspecto:

 

http://www.tankasports.com/es/marca-103/camelbak

http://www.tankasports.com/es/103_camelbak

 

Ahora funcionan ambas y me temo que Google indentificará esto como una duplicidad de contenidos. 

 

¿No sería recomendable eliminar definitivamente la url con el guión bajo y luego hacer una redirección 301?

 

¿Como lo ves?

 

Saludos.

Link to comment
Share on other sites

M.. perdona que te moleste tanto. Tienes creada la redirección para este tema? Nunca me ha tocado hacer una redirección y en este caso tampoco se como hacerlo para que se queden redirigidas todas las marcas...

 

Perdona tanta molestia..

Link to comment
Share on other sites

  • nadie locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...