New Sense Posted December 8, 2023 Share Posted December 8, 2023 Ciao a tutti. Ho un sito online collegato ad un gestionale di magazzino. Il sito viene aggiornato costantemente dal gestionale con prodotti e quantità. E fin qui tutto ok. Il sito è poi collegato tramite modulo ad amazon, che mi mette in vendita tutto. Per poter mettere migliaia di articoli in vendita su amazon, gli articoli devono essere attivi sul sito. Caricando l'intero magazzino, amazon rileva i codici ean e associa tutti gli articoli a quelli esistenti sul marketplace anche quelli ai quali non ho messo nessuna immagine. E fin qui tutto bene. Il problema però è che gli articoli senza immagine me li ritrovo tutti online sul mio sito creando così disordine. La domanda è questa. C'è un modo per lasciare tutti gli articoli on line e nascondere solamente quelli senza immagine? Grazie Prestashop 8.1.2 Tema classic Link to comment Share on other sites More sharing options...
ziobudda Posted December 10, 2023 Share Posted December 10, 2023 Ciao, nascondere oppure disattivare ? M. Link to comment Share on other sites More sharing options...
New Sense Posted December 10, 2023 Author Share Posted December 10, 2023 Solamente nascondere 1 Link to comment Share on other sites More sharing options...
ziobudda Posted December 10, 2023 Share Posted December 10, 2023 Dovrestoi modificare la classe Product che è quella responsabile della query dei prodotti, così da far selezionare solo i prodotti con delle immagini. Non è difficilissimo se sai dove mettere le mani, altrimenti puoi pagare uno sviluppatore per farlo. M. Link to comment Share on other sites More sharing options...
ps8modules Posted December 10, 2023 Share Posted December 10, 2023 (edited) Ciao, ci sono diverse opzioni. Uno è programmare il modulo e collegare il gancio dopo aver aggiornato il prodotto. Un'altra opzione è programmare uno script ed eseguirlo tramite un'attività Cron. Non è niente di complicato. Edited December 10, 2023 by ps8moduly.cz (see edit history) 1 Link to comment Share on other sites More sharing options...
ps8modules Posted December 11, 2023 Share Posted December 11, 2023 (edited) Ecco uno script che può essere salvato nella cartella principale di Prestashop ed eseguito da un URL. <?php include_once('./config/config.inc.php'); $db = Db::getInstance(); $sql = 'SELECT a.id_product AS product_id_product FROM '._DB_PREFIX_.'product a WHERE a.id_product NOT IN (SELECT b.id_product FROM '._DB_PREFIX_.'image b)'; $products = Db::getInstance()->ExecuteS( $sql ); if ($products) { foreach($products as $product) { $db->update('product', array('active' => '0'), 'id_product = '.$product['product_id_product']); $db->update('product_shop', array('active' => '0'), 'id_product = '.$product['product_id_product']); echo 'disabled product: '.$product['product_id_product'].'<br>'; } } else { echo 'all products have some picture'; } Edited December 11, 2023 by ps8moduly.cz (see edit history) 1 Link to comment Share on other sites More sharing options...
ziobudda Posted December 11, 2023 Share Posted December 11, 2023 Il tuo script pero' disabilita i prodotti. Lui li vuole solo nascosti (quindi non visibili). E' diverso. M. Link to comment Share on other sites More sharing options...
ps8modules Posted December 11, 2023 Share Posted December 11, 2023 (edited) Può essere facilmente modificato nello script. $db->update('product', array('visibility' => 'none', 'show_price' => '1', 'indexed' => '1'), 'id_product = '.$product['product_id_product']); $db->update('product_shop', array('visibility' => 'none', 'show_price' => '1', 'indexed' => '1'), 'id_product = '.$product['product_id_product']); hide-product-without-images.zip Edited December 11, 2023 by ps8moduly.cz (see edit history) 1 Link to comment Share on other sites More sharing options...
New Sense Posted December 11, 2023 Author Share Posted December 11, 2023 6 hours ago, ps8moduly.cz said: Può essere facilmente modificato nello script. nascondi-prodotto-senza-immagini.zip 539 a.C · 0 download ho bisogno che sia comunque abilitato alla vendita, ma avrei bisogno che sia nascosto se non ha l'immagine (prende quella di sistema che indica immagine non disponibili) 1 Link to comment Share on other sites More sharing options...
ps8modules Posted December 11, 2023 Share Posted December 11, 2023 (edited) 1 hour ago, New Sense said: ho bisogno che sia comunque abilitato alla vendita, ma avrei bisogno che sia nascosto se non ha l'immagine (prende quella di sistema che indica immagine non disponibili) Questo è ciò che fa la sceneggiatura!! È nascosto solo per i clienti. Per eovoty vedeteli ed è possibile ordinarlo. Naturalmente sarà più sicuro aggiungere un token allo script. Edited December 11, 2023 by ps8moduly.cz (see edit history) 1 Link to comment Share on other sites More sharing options...
New Sense Posted December 11, 2023 Author Share Posted December 11, 2023 Grazie e che non sono un programmatore. Ti dispiace indicarmi la procedura per inserire lo script per favore? Grazie mille dell'aiuto 1 Link to comment Share on other sites More sharing options...
ps8modules Posted December 11, 2023 Share Posted December 11, 2023 carica il file php nella cartella principale dell'installazione Prestashop. Esegui lo script chiamando php. Ad esempio: https://eshop.it/hide-product-without-images.php 1 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