Dans cet article nous allons apprendre les nouveaux standards de création de liens sur les fichiers tpl dans Prestashop 1.7.

Sous Prestashop 1.7, une nouvelle norme a été défini afin de créer facilement des liens sur les Tpl. Désormais nous devons utiliser {url} pour différents types de création de liens.

Afin de comprendre comment utiliser {url} voici quelques exemples.

Nom du controlleur Code Exemple
Controlleur catégorie ```{url entity = 'catégorie' id = $ id_category id_lang = $ id_lang}``` ```{url entity = 'catégorie' id = 3 id_lang = 2}```
//mysite.com/categorie-2
Controlleur CMS ```{URL entity = 'cms' id = $ id_cms id_lang = $ id_lang}``` ```{URL entity = 'cms' id = 3 id_lang = 2}```
//monsite.fr/cms-3-2
Controlleur categoryImage ```{url entity = 'categoryImage' id = $ id_category name = 'imageType'}``` ```{url entity = 'categoryImage' id = 3 nom = 'home-default'}```
//mysite.com/3-home-default
Controlleur address ```{url entity = address params=['id_address' => $id_address]}``` ```{url entity = 'address' id = 3}```
//mysite.com/address-3
Controlleur product ```{url entity = product params=['id_product' => $product]}``` ```{url entity = 'product' id = 1}```
//mysite.com/product-1
Controlleur language ```{url entity = 'language' id=$language.id_lang}``` ```{url entity = 'language' id= 1}```
//mysite.com/language-1
Controlleur attachment ```{url entity = 'attachment' params=['id_attachment' => $attachment.id_attachment]}``` ```{url entity = 'attachment' params= 1}```
//mysite.com/attachment-1
Controlleur module ```{url entity = 'module' name = 'module' controller = 'controller' params = ['id_module' => $id_module, 'id_controller' => $id_controller ]}``` ```{url entity = 'module' name = 'mymodule' controller = 'moduleController' params = ['id_module' => 1, 'id_controller' => 3]}```
//mysite.com/mymodule-moduleController-1-3

L’objets globales {urls} permet de lister répertoires, site, thème et pages.

URL globales (répertoires, site et thème)
code $urls Description
```{$urls.base_url}``` Url de la page d'accueil de votre Prestashop
```{$urls.current_url}``` Page sur laquelle vous vous trouvez
```{$urls.shop_domain_url}``` Nom de domaine de la boutique
```{$urls.img_ps_url}``` Url du repertoire /img de votre Prestashop
```{$urls.img_cat_url}``` Url des images des catégories, /img/c
```{$urls.img_lang_url}``` Url des images des langues de votre Prestashop
```{$urls.img_prod_url}``` Url des images des produits, /img/p
```{$urls.img_manu_url}``` Url des images des fabriquants, /img/m
```{$urls.img_sup_url}``` Url des images liées aux fournisseurs
```{$urls.img_ship_url}``` Url des images liées aux transporteurs
```{$urls.img_url}``` Url des images de votre thème, /themes/votretheme/assets/img
```{$urls.css_url}``` Url des fichiers css de votre thème, /themes/votretheme/assets/css
```{$urls.js_url}``` Url des fichiers js de votre thème, /themes/votretheme/assets/js
```{$urls.pic_url}``` Url des répertoire /upload

URL des pages

code $urls Descriptions
{$urls.pages.address} Url de la page “Mon adresse” côté client
{$urls.pages.addresses} Url de la page “Mes adresses” côté client
{$urls.pages.authentication} Url de la page connexion
{$urls.pages.cart} Url du panier
{$urls.pages.category} Url de la catégorie
{$urls.pages.cms} Url des CMS
{$urls.pages.contact} Url de la page contact
{$urls.pages.discount} Url de la page des promotions
{$urls.pages.guest_tracking} Url de suivi de commande pour les clients du groupe “Invités”
{$urls.pages.history} Url de l’historique des commandes
{$urls.pages.identity} Url de la page des informations personnelles côté client
{$urls.pages.index} Url de la page
{$urls.pages.my_account} Url de la page “Mon Compte”
{$urls.pages.order_confirmation} Url de la page de confirmation de commande
{$urls.pages.order_follow} Url de la page de suivi de commande
{$urls.pages.order} Urm de la page de commande
{$urls.pages.order_return} Url de la page de retour de commande
{$urls.pages.order_slip} Url à appeler pour le bon de commande
{$urls.pages.pagenotfound} Url 404
{$urls.pages.password} Url de la page de récupération de mot de passe
{$urls.pages.pdf_invoice} Url des PDF des factures
{$urls.pages.pdf_order_return} Url des PDF de retours de commandes
{$urls.pages.pdf_order_slip} Url du PDF des bons de commandes
{$urls.pages.prices_drop} Url de la page listant les produits aux prix réduits
{$urls.pages.product} Url de la fiche produit
{$urls.pages.search} Url de la page de recherche
{$urls.pages.sitemap} Url de votre page de plan de site
{$urls.pages.stores} Url de la page listant vos magasins
{$urls.pages.supplier} Url de la page listant vos fabricants
{$urls.pages.register} Url de la page de création de compte
{$urls.pages.order_login} Url de connexion depuis le tunner de commande
{$urls.theme_assets} Url du répertoire /assets de votre thème
{$urls.actions.logout} Url de deconnection pour le client