Rimuovere id_product_attribute dall'url in Prestashop 1.7

ATTENZIONE! Il post ha più di 2 anni e le informazioni contenute potrebbero essere obsolete (ad esempio a causa di un aggiornamento di versione rispetto agli elementi descritti o links modificati da siti esterni).

Prestashop dalle versione 1.7 richiede il parametro id_product_attribute all'interno dell'url dei prodotti, andando così a creare un url di questo tipo, con i parametri dopo l'hash:

https://myshop.it/it/attrezzi/3-6-trapani#/26-anno-2018/29-batteria-12_volt


Infatti dalla pagina di amministrazione SEO&URLs è possibile vedere il parametro impostato per il percorso ai prodotti:

{category:/}{id}{-:id_product_attribute}-{rewrite}{-:ean13}

Provando a eliminarlo si ottiene l'errore:

Parola chiave "{id_product_attribute}" richiesta per il percorso "product_rule" (regola: "{category:/}{id}{rewrite}{-:ean13}")

Quindi la soluzione non si può gestire dal pannello di amministrazione, ma si può fare in altro modo, ovvero modificando i template (è sempre meglio creare un child template per queste modifiche).
Nei files .tpl infatti gli url ai prodotti saranno in questo formato:

<a href="{$product.url}">..... 

Sarà sufficiente utilizzare il canonical_url al posto dell'url, modificando quindi la variabile smarty

<a href="{$product.canonical_url}">.....
 

In questo modo l'url risulterà più "pulito" e verrà comunque selezionata nella pagina la variante di prodotto predefinita:

https://myshop.it/it/attrezzi/3-6-trapani

Condividi questo post


Commenti