PrestaShop 1.5.2 no pone categoría por defecto en url de productos

Muy buenas de nuevo, como veis aquí sigo optimizando nuevas versiones de PrestaShop y sinceramente creo que cada vez ponen menos esmero en conseguir que PrestaShop sea lo más amigable posible para buscadores.

En esta ocasión, tras solucionar estos dos problemas

  1. Inclusión de cada producto en una categoría por defecto
  2. Creación de un módulo específico para hacer correctamente el sitemap multi-idioma (cosa que ha día de hoy PrestaShop no hace bien en ninguna de sus versiones).

Me di cuenta que aunque toda estaba bien las urls de PrestaShop no mostraban de ninguna manera las categorías en Urls, lo que francamente se carga cualquier intento de tener una estructura lógica de clusters.

[-] Indice de contenidos
  • Bug de PrestaShop
  • Bug de PrestaShop

    No me ha costado mucho dar con la solución buscando en los bug conocidos de PrestaShop hasta dar con este: http://forge.prestashop.com/browse/PSCFV-4978

    En resumidas cuentas existe un problema en el fichero /classes/Link.php que se soluciona cambiando el primer fragmento de código que os muestro por el segundo.

    Código Original (línea 130)

    if ($dispatcher->hasKeyword(‘product_rule’, $id_lang, ‘categories’))
    {
    $params[‘category’] = (!$category) ? $product->category : $category;
    $cats = array();
    foreach ($product->getParentCategories() as $cat)
    $cats[] = $cat[‘link_rewrite’];
    $params[‘categories’] = implode(‘/’, $cats);
    }

    Nuevo código

    if ($dispatcher->hasKeyword(‘product_rule’, $id_lang, ‘category’))
    $params[‘category’] = (!$category) ? $product->category : $category;
    if ($dispatcher->hasKeyword(‘product_rule’, $id_lang, ‘categories’))
    {
    $cats = array(); foreach ($product->getParentCategories() as $cat) $cats[] = $cat[‘link_rewrite’]; $params[‘categories’] = implode(‘/’, $cats);
    }

    Con esta solución se arreglará el problema, pero lo mejor sería hacer Rewrite para no tener que tocar el código original y no tener problemas con futuras actualizaciones.

    Como ya he dicho existen soluciones mejores, así que si la tienes no dudes en ponerla en un comentario ;)

    ¿Con ganas de aprender más? Conóceme y sigue mis perfiles sociales AQUÍ.

    También puedes conocer mis servicios:.

    Servicios SEO


    Servicios personalizados como Consultor SEO Freelace para profesionales, eCommerce, agencias y PYMES

    1 comentario

    1. Antonio Sánchez

      ¡Menos mal! Por fin doy con la solución, que me tenía loco. Es la primera vez que trabajo con Prestashop y no había manera de arreglar el fallo (link_rewrite required) hasta ahora.
      ¡Gracias!

    Dejar un comentario

    Tu dirección de correo electrónico no será publicada.

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.