Aude5 Posted August 27, 2020 Share Posted August 27, 2020 (edited) Bonjour, J'avoue. Je cale sur la récupération d'une information. Dans le back office, je souhaite affiche le contenu du champs "Available_now" pour chaque ligne de détail produit. J'ai bien tenté de "fouiller" dans les classes, mais sans succès et cette caleur n'est pas disponible pour lors de l'execution {$product|@debug_print_var} dans _Product_Line.tpl une idée ? Edited August 27, 2020 by Aude5 (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted August 27, 2020 Share Posted August 27, 2020 il suffit de l'ajouter dans le helper du controleur adminProduct 1 Link to comment Share on other sites More sharing options...
Aude5 Posted August 27, 2020 Author Share Posted August 27, 2020 (edited) dans le fichier le fichier controllers / admin / adminiproductscontroller.php ? ou bien dans admin/themes\default\template\controllers\products\helpers ? Car dans le 1er cas si j'ajoute dans le construct $this->fields_list['available_now'] = array( 'title' => $this->l('available_now'), 'align' => 'left', ); j'ai bien la liste de produits dans le back office qui contient bien le available_now, mais moi je le veux dans le detail d'une commande en back office au moins ça me rassure il y a une solution Edited August 27, 2020 by Aude5 (see edit history) Link to comment Share on other sites More sharing options...
Aude5 Posted August 31, 2020 Author Share Posted August 31, 2020 (edited) un peu d'aide les amis ? Please @Eolia 😀 Edited September 1, 2020 by Aude5 (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted September 1, 2020 Share Posted September 1, 2020 Dans /admin829/themes/default/template/controllers/orders/_product_line.tpl Sous quelle version êtes-vous car available_now n'existe pas nativement on a available_for_order ou available_date Link to comment Share on other sites More sharing options...
Aude5 Posted September 1, 2020 Author Share Posted September 1, 2020 Merci @eolia pour le retour En effet il semble que cela ne soit pas une information "native", ça complique les choses ? Link to comment Share on other sites More sharing options...
Eolia Posted September 1, 2020 Share Posted September 1, 2020 Vous voulez savoir quoi (en français) comme information pour ces produits ? Link to comment Share on other sites More sharing options...
Eolia Posted September 1, 2020 Share Posted September 1, 2020 available_now est un champ texte multi-langue qui affiche le message quand un produit est dispo ou pas Link to comment Share on other sites More sharing options...
Eolia Posted September 1, 2020 Share Posted September 1, 2020 Cette info n'étant pas dans la table order_detail (qui est utilisée pour afficher le détails des produits dans une commande) public function getProductsDetail() { return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' SELECT * FROM `'._DB_PREFIX_.'order_detail` od LEFT JOIN `'._DB_PREFIX_.'product` p ON (p.id_product = od.product_id) LEFT JOIN `'._DB_PREFIX_.'product_shop` ps ON (ps.id_product = p.id_product AND ps.id_shop = od.id_shop) WHERE od.`id_order` = '.(int)$this->id); } Il faut faire une jointure avec ps_product_lang pour ajouter cette info au tableau récupéré (dans classes/order/order.php) La fonction devient donc: public function getProductsDetail() { return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' SELECT od.*, p.*, ps.*, pl.available_now, pl.available_later FROM `'._DB_PREFIX_.'order_detail` od LEFT JOIN `'._DB_PREFIX_.'product` p ON (p.id_product = od.product_id) LEFT JOIN `'._DB_PREFIX_.'product_shop` ps ON (ps.id_product = p.id_product AND ps.id_shop = od.id_shop) LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (pl.id_product = od.product_id AND pl.id_lang = '.(int)Context::getContext()->language->id.' AND pl.id_shop = od.id_shop) WHERE od.`id_order` = '.(int)$this->id); } Ensuite ajouter dans /admin/themes/default/template/controllers/orders/_product_line.tpl: <td class="productAvailability text-center"> <span class="product_availability_show">{$product['available_now']}</span> </td> Et terminer avec les en-têtes dans /admin/themes/default/template/controllers/orders/helpers/view/view.tpl: <th class="text-center"><span class="title_box ">{l s='Dispo'}</span></th> Ce qui donne: 1 Link to comment Share on other sites More sharing options...
Aude5 Posted September 2, 2020 Author Share Posted September 2, 2020 Merci @Eolia ça fonctionne impeccable ! Heureusement que la communauté est là Je me pose la question sur l'impact de la modification de cette classe ? en terme de sécurité et lors des mises à jour ? Bien que ce le soit que de la lecture Link to comment Share on other sites More sharing options...
Eolia Posted September 2, 2020 Share Posted September 2, 2020 Aucun impact de sécurité et puis mise à jour de 1.6 ? Si vous passez en 1.7 ce sera sans moi^^ 1 Link to comment Share on other sites More sharing options...
Aude5 Posted September 2, 2020 Author Share Posted September 2, 2020 Ok merci Personnellement pas trop motivé pour passé en 1.7 mais le temps aura surement raison de nous. Link to comment Share on other sites More sharing options...
Eolia Posted September 2, 2020 Share Posted September 2, 2020 Perso je suis en 1.6.1.26 mais ce n'est pas officiel 1 Link to comment Share on other sites More sharing options...
Aude5 Posted September 2, 2020 Author Share Posted September 2, 2020 pas 1.6.1.24 ? faut m'en dire plus en privé 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