deuxplustrois Posted August 12, 2015 Share Posted August 12, 2015 Bonjour à tous. Je suis sous Prestashop 1.6.1.0 Je n'arrive pas à ajouter les caractéristiques de mes produits dans les PDF de livraison et de facture. J'ai pu les rajouter sans souci dans mon tunnel de commande avec ce code trouvable ailleurs sur le forum. Dans shopping-cart-product-line.tpl en dessous de la classe product-name : {assign var='features' value=Product::getFrontFeaturesStatic($cookie->id_lang, $product.id_product)} {if isset($features) && $features} {foreach from=$features item=feature} {if isset($feature.value)} {$feature.name|escape:'htmlall':'UTF-8'} : {$feature.value|escape:'htmlall':'UTF-8'} {/if} {/foreach} {/if} Le code suivant est également proposé sur le forum pour afficher les caractéristiques dans les factures mais rien ne s'affiche dans les PDF. {assign var="defaultlang" value=(int)(Configuration::get('PS_LANG_DEFAULT'))} {assign var="features" value=Product::getFrontFeaturesStatic($defaultlang, $order_detail.product_id)} {foreach $features as $feature} {$feature.name}: {$feature.value} {/foreach} Quelqu'un a-t-il déjà trouvé la bonne parade ? Merci de votre aide et de votre temps. Link to comment Share on other sites More sharing options...
tuk66 Posted August 12, 2015 Share Posted August 12, 2015 Vous devez créer des données pour les modèles de facture dans /classes/pdf/HTMLTemplateInvoice.php puis utiliser ces données dans le modèle(s) - /pdf/invoice.product-tab.tpl ou autreAlternativement, le module M4 PDF Extensions a les "Factures - Caractéristiques du produit" modèle (m4_invoice_product_features.tpl) déjà intégré. You have to create data for invoice templates in /classes/pdf/HTMLTemplateInvoice.php and then use that data in the template(s) - /pdf/invoice.product-tab.tpl or other Alternatively, the M4 PDF Extensions module has the "Invoices - product features" template (m4_invoice_product_features.tpl) already built-in. Link to comment Share on other sites More sharing options...
deuxplustrois Posted August 12, 2015 Author Share Posted August 12, 2015 Merci de votre retour. En fait le code précédent fonctionne sans override de la classe HTMLTemplateInvoice.php Il faut faire un override des PDF en les ajoutant dans le dossier themes. Bizarrement cette modification ne fonctionne pas si les PDF restent dans leur dossier par défaut. Même après avoir vidé le cache. C'est tout con mais bon... Cette modification fonctionne à la fois sur delivery-slip.product-tab.tpl et sur invoice.product-tab.tpl On peut aussi contraindre les caractéristiques affichées grâce à leur ID. Dans mon cas, je voulais faire un retour à la ligne pour deux caractéristiques en affichant à la fois le nom et la valeur associée. Et afficher les trois autres caractéristiques à côté en affichant que la valeur. Ce qui donne : {assign var="defaultlang" value=(int)(Configuration::get('PS_LANG_DEFAULT'))} {assign var="features" value=Product::getFrontFeaturesStatic($defaultlang, $order_detail.product_id)} {foreach $features as $feature} {if $feature.id_feature == 3} {$feature.name} : {$feature.value} <br/> {/if} {if $feature.id_feature == 4} {$feature.name} : {$feature.value} <br/> {/if} {if $feature.id_feature == 2} {$feature.value} {/if} {if $feature.id_feature == 1} {$feature.value} {/if} {if $feature.id_feature == 5} {$feature.value} {/if} {/foreach} Le code est à insérer après <td class="product left"> {if $display_product_images} <table width="100%"> <tr> <td width="15%"> {if isset($order_detail.image) && $order_detail.image->id} {$order_detail.image_tag} {/if} </td> <td width="5%"> </td> <td width="80%"> {$order_detail.product_name} </td> </tr> </table> {else} {$order_detail.product_name}</strong> {/if} Merci tuk66 d'avoir pris le temps de regarder. Bonne fin d'après-midi. 1 Link to comment Share on other sites More sharing options...
CatalaGlass Posted October 29, 2015 Share Posted October 29, 2015 Merci beaucoup ! J'ai l'impression que mes post autour des questions d'insertion des caractéristiques dans la fiche produit, le caddy etc, vous ont aidé, et maintenant, c'est votre post qui me sort de l'impasse ... Il me fallait simplement mettre mon invoice.tpl et mon delivery.tpl modifié dans themes/montheme/pdf/ pour que l'insertion des lignes de code fonctionne . Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now