mistertendance Posted March 6, 2014 Share Posted March 6, 2014 Bonjour à tous, J'ai besoin d'exporter pour excel tout mon catalogue et la fonction export catalogue native de prestashop ne marche pas pour moi, j'ai donc tout simplement créé la requete dans le gestionnaire SQL de prestashop comme suit : SELECT reference, ean13, weight, minimal_quantity, wholesale_price, price FROM ps_product ORDER BY reference ce qui est déjà top mais je n'arrive pas à faire la jointure avec les images pour m'afficher juste l'image par défaut de chaque produit 2eme question Dans le cas ou il me donnerait le lien de l'image produit, comment faire pour demander à excel d'aller m'afficher l'image plutot que son lien merci d'avance à tous Link to comment Share on other sites More sharing options...
math_php Posted March 7, 2014 Share Posted March 7, 2014 Bonjour, Un début de réponse serait : SELECT p.id_product,reference, ean13, weight, minimal_quantity, wholesale_price, price,id_image FROM ps_product p LEFT JOIN ps_image i ON p.id_product = i.id_product and i.cover=1 and position =1 ORDER BY reference Mais malheureusement je ne crois pas qu'il soit possible d'avoir le chemin des images complets juste avec du sql. Cordialement Link to comment Share on other sites More sharing options...
CorentinDav Posted March 7, 2014 Share Posted March 7, 2014 les images des produits sont dans le répertoire /img/p/idProduit/idProduit.jpg Link to comment Share on other sites More sharing options...
math_php Posted March 7, 2014 Share Posted March 7, 2014 les images des produits sont dans le répertoire /img/p/idProduit/idProduit.jpg Pas tout le temps et pas pour toutes les versions de prestashop. Il y a plusieurs modes de stockage. Link to comment Share on other sites More sharing options...
Whoami Posted March 7, 2014 Share Posted March 7, 2014 Bonjour, La question de base tout de même : Quelle version de Prestashop ? Pas tout le temps et pas pour toutes les versions de prestashop. Il y a plusieurs modes de stockage. Exactement, les chemins d'images ne sont pas stockés en base de donnée. Ils dépendent principalement : - Du htaccess (url rewriting ou non) - De la version - Du système d'image utilisé 1 Link to comment Share on other sites More sharing options...
math_php Posted March 7, 2014 Share Posted March 7, 2014 Exactement, les chemins d'images ne sont pas stockés en base de donnée. Ils dépendent principalement : - Du htaccess (url rewriting ou non) - De la version - Du système d'image utilisé Vu la complexité de la méthode getImageLink dans la classe link ça va pas être possible en sql Il faudrait un module existant ou à créer. Link to comment Share on other sites More sharing options...
Whoami Posted March 7, 2014 Share Posted March 7, 2014 @math_php : Je pense que tout est possible en sql, à partir du moment ou c'est du retraitement de données métier, il est quasiment toujours possible de le faire côté métier. Cependant, on va commencer à taper dans une bonne grosse requête composée des familles / procédure stockée avec plein de paramètres à lui donner, ça monte d'un cran côté développement et nécessite sans doute un petit module Ca doit être toujours possible de le faire en sql brut sans donnée d'entrée, mais en prenant en compte tous les cas (et donc faire plusieurs colonnes dans la sortie avec img_rewrite, img_classic, img_suivant_la_temperature_externe, etc.) Link to comment Share on other sites More sharing options...
math_php Posted March 7, 2014 Share Posted March 7, 2014 (edited) A force d'étudier le stockage des images, j'ai vite fait un petit module, c'est testé sur 1.5. C'est vite fait, ça doit prendre pas mal de ressource sql, mais dans mon cas ça fonctionne. Installez le module, puis dans la configuration il faut cliquer sur le lien file. Oups oui le fichier exporter doit etre renommé en autre chose que xport.php (xport.csv ou autres) Comme décrit c'est du vite fait xportimgprod.zip Edited March 7, 2014 by math_php (see edit history) 1 Link to comment Share on other sites More sharing options...
Whoami Posted March 7, 2014 Share Posted March 7, 2014 (edited) J'allais le dire A noter que j'ai fais une récupération, modifié quelques trucs pour ma sauce (notemment les \t en ; pour le séparateur). Pour le fonctionnement plus précis sur une 1.4 en fin de boucle : $product = new Product($product['id_product'], false, 2); // Note : 2e et 3e paramètre suivant convenance, possibilité d'utiliser un $cookie->id_lang par exemple. if (!empty($value)){ $url = $link->getImageLink($product->link_rewrite, "".$product->id."-".$value.""); } Edited March 7, 2014 by Whoami (see edit history) 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