Jump to content

URL productos sin categorías ¿es posible?


antonpas_bcn

Recommended Posts

Buenas tardes, ¿sería posible en PS eliminar el nombre de la categoría de la URL de los productos?

 

El tema sería hacer algo así:

 

www.miweb.com/articulo1.html en vez de www.miweb.com/categoria1/articulo1.html

 

 

Saludos y gracias de antemano!

Link to comment
Share on other sites

Según el post mencionado, tengo que añadir este código:

 

public function getProductLink($id_product, $alias = NULL, $category = NULL, $ean13 = NULL)
   {
	 if (!isset($this->allow)) $this->allow = 0;
    if (is_object($id_product))
	    return ($this->allow == 1)?(_PS_BASE_URL_.__PS_BASE_URI__.intval($id_product->id).'-'.$id_product->link_rewrite.($id_product->ean13 ? '-'.$id_product->ean13 : '').'.html') :
	    (_PS_BASE_URL_.__PS_BASE_URI__.'product.php?id_product='.intval($id_product->id));
    elseif ($alias)
	    return ($this->allow == 1)?(_PS_BASE_URL_.__PS_BASE_URI__.intval($id_product).'-'.$alias.($ean13 ? '-'.$ean13 : '').'.html') :
	    (_PS_BASE_URL_.__PS_BASE_URI__.'product.php?id_product='.intval($id_product));
    else
	    return _PS_BASE_URL_.__PS_BASE_URI__.'product.php?id_product='.intval($id_product);
   }

 

En mi Link.php la función es la siguiente:

 

public function getProductLink($id_product, $alias = NULL, $category = NULL, $ean13 = NULL, $id_lang = NULL)
{
 global $cookie;
 if (is_object($id_product))
 { 
  $link = '';
  if ($this->allow == 1)
  {
   $link .= (_PS_BASE_URL_.__PS_BASE_URI__.$this->getLangLink((int)$id_lang));

   if (isset($id_product->category) AND !empty($id_product->category) AND $id_product->category != 'home')
 $link .= $id_product->category.'/';
   else
 $link .= '';
   $link .= (int)$id_product->id.'-';
   if (is_array($id_product->link_rewrite))
 $link.= $id_product->link_rewrite[(int)$cookie->id_lang];
   else
  $link.= $id_product->link_rewrite;
   if ($id_product->ean13)
 $link .='-'.$id_product->ean13;
   else
 $link .= '';
   $link .= '.html';
  }
  else
  {
   $link .= (_PS_BASE_URL_.__PS_BASE_URI__.'product.php?id_product='.(int)$id_product->id);
  }
  return $link;
 }

 else if ($alias)
 {
  $link = '';
  if ($this->allow == 1)
  {
   $link .= (_PS_BASE_URL_.__PS_BASE_URI__.$this->getLangLink((int)$id_lang));

   if ($category AND $category != 'home')
 $link .= $category.'/';
   else
  $link .= '';

   $link .= (int)$id_product.'-'.$alias;

   if ($ean13)
 $link .='-'.$ean13;
   else
 $link .= '';

   $link .= '.html';
  }
  else
   $link .=(_PS_BASE_URL_.__PS_BASE_URI__.'product.php?id_product='.(int)$id_product);
  return $link;
 }

 else
  return _PS_BASE_URL_.__PS_BASE_URI__.'product.php?id_product='.(int)$id_product;

 

Luego, ¿el tema es sustituir este último texto por el primero?

 

Saludos y gracias.

Link to comment
Share on other sites

Después de probarlo os confirmo que funciona correctamente.

 

Saludos y gracias!

Un placer ayudarte y servirte!

 

Si das el tema como solucionado, edita el titulo del tema y añade la palabra "Solucionado" al titulo, esto ayudara a mantener una mayor organización en el foro.

 

Por ultimo, recuerda que estaremos en el foro, para guiarte por este mundo oscuro y tenebroso.

Link to comment
Share on other sites

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