WebSite X5Help Center

 
Andrea P.
Andrea P.
User

Galleria di prodotti simili consigliati  it

Auteur : Andrea P.
Visité 755, Followers 2, Partagé 0  

Scusate per la banalità della domanda, ma io non sono proprio riuscito a capire, anche dopo molte ricerche nell'helpcenter, come creare nella nuova versione Professional 2021 una Galleria di prodotti simili consigliati da visualizzare nelle schede prodotti. Voglio precisare che non ho bisogno di una galleria permanente, perché nel mio sito vendo pezzi unici e non di massa. (Simile al prodotto A al momento c'è il prodotto F, il prodotto M ed il prodotto P. I prodotti B, E, ed O erano simili al prodotto A ma non vengono visualizzati come consigliati perché già venduti e non più disponibili) Le gallerie prodotti simili quindi dovrebbero aggiornarsi automaticamente ogni qual volta un prodotto viene venduto e presentare solo prodotti realmente disponibili a magazzino. Quindi per favore non suggeritemi come creare una galleria statica, questo lo saprei fare benissimo. Ho bisogno di capire come si fa una galleria DINAMICA. Non sono riuscito a trovare informazioni al riguardo. Potreste aiutarmi? Grazie.

Posté le
9 RéPONSES - 1 UTILES
Giancarlo B.
Giancarlo B.
User

Ciao le crea in automatico attingendo dalle categorie che tu hai creato sul carrello, se visualizza un prodotto della categoria Gear, ti propone anche i restanti prodotti della stessa.

Lire plus
Posté le de Giancarlo B.
Andrea P.
Andrea P.
User
Auteur

Grazie, ma se faccio così creo una galleria statica. I prodotti già venduti vengono comunque visualizzati. Se seleziono l'intera cartella vengono visualizzati tutti i prodotti della cartella. Se seleziono i prodotti uno ad uno vengono visualizzati i prodotti selezionati. Questo è esattamente quello che ho specificato sopra come galleria statica. La galleria dinamica che dico io invece mostra tre o quattro prodotti al massimo (NON DI PIU) e a caso fra quelli disponibili. Lo scopo della galleria "Prodotti simili" è quello di evitare l'abbandono del sito da parte del tanto costoso utente web. Che continui la visita del sito guardando qualcos'altro. Se però gli mostriamo prodotti già venduti tutti gli sforzi sono vanificati. Non è un concetto difficile da capire e spero che stavolta sia chiaro. Come fare?

Giancarlo B.
Ciao le crea in automatico attingendo dalle categorie che tu hai creato sul carrello, se visualizza un prodotto della categoria Gear, ti propone anche i restanti prodotti della stessa.
Lire plus
Posté le de Andrea P.
Giancarlo B.
Giancarlo B.
User

Quello che offre attualmente il programma è quanto ho scritto. Dovresti provare ad aprire un post idea ed aspettare.... ..... ......

Lire plus
Posté le de Giancarlo B.
Luca E.
Luca E.
User

Con un mix di PHP/MYSQL e Ajax tutto è possibile...

È ovvio che il programma è impostato per un ampio parco di categorie, le esigenze personali o dovresti crearle da solo oppure rivolgerti ad uno sviluppatore, ma di certo non costerebbe 100/200€

Lire plus
Posté le de Luca E.
Andrea P.
Andrea P.
User
Auteur

Dal video di presentazione della nuova versione mi era parso che fosse possibile. Se no significherebbe che sarebbe rimasto tutto come prima e che non ci sono novità da questo punto di vista. Ma forse hai ragione. Grandi cambiamenti non ne vedo.

Giancarlo B.
Quello che offre attualmente il programma è quanto ho scritto. Dovresti provare ad aprire un post idea ed aspettare.... ..... ......
Lire plus
Posté le de Andrea P.
Luca E.
Luca E.
User

@ANDREA P.

crea una pagina php nella cartella product, inserisci il codice che trovi sotto, inserisci le variabili che ti ho evidenziato dopo le //

apri la pagina con il nome che hai scelto + lo "slug" (esempio: miapagina.php?slug=xxxx)

xxxx sta per il nome del prodotto che vedi nell'url del podotto

e come per magia dovresti avere a video solo i prodotti disponibili per la categoria del prodotto.

Dovrai solo ricreare il div dello slider e richiamarlo con un jquery replace. Se non ci riesci appena posso cerco di farlo...

Ciao

<?php
$conn = new mysqli(
"", //host DB
"", //username DB
"", //password DB
"" //table DB
);
mysqli_connect_errno();
$tabella = ""; // TABLE prefix
$tabella .= 'dynamicproducts';

function search_in_cart($start,$end,$string, $borders=true){
$reg="!".preg_quote($start)."(.*?)".preg_quote($end)."!is";
preg_match_all($reg,$string,$matches);
if($borders) return $matches[0];
else return $matches[1];
}

function relatedProdukt($slug){
$cart_php = file_get_contents("../cart/x5cart.php");
$cart_array_one = search_in_cart("'slug' => '$slug',", "'productPageDetailsRichText' => array" , $cart_php);
$cart_array_two = search_in_cart("'relatedProducts' => array(", ")," , $cart_array_one[0]);
$cart_array_two = str_replace(array("'relatedProducts' => array(","),"),"",$cart_array_two[0]);
$cart_array_two = str_replace("'","",$cart_array_two);
return trim($cart_array_two);
}
function getStock($id,$tabella){
global $conn;
$out = "";
$sql = "SELECT * FROM $tabella WHERE id = '$id' ";
$result = $conn->query($sql);
while($row = $result->fetch_array()) {
//$row=$result->fetch_assoc();
$quantity = $row['quantity'];
}
if ($quantity > 0){
return "Item:$id is AVAILABLE with =>$quantity pieces in stock";
} else {
return "Item:$id is UNAVAILABLE =>$quantity pieces";
}
}


$the_array = relatedProdukt($_GET['slug']);
$single_item = explode(",",$the_array);
foreach ($single_item as $num => $item) {
$item = trim($item);
echo getStock($item,$tabella);
echo "<br>";
}
?>

Lire plus
Posté le de Luca E.
Luca E.
Luca E.
User

Questo il mio risultato:

PS: dove manca il numero è perchè il prodotto non è ancora presente nelle quantità (il sito è ancora un cantiere aperto)

Lire plus
Posté le de Luca E.
Andrea P.
Andrea P.
User
Auteur

Grazie Luca, ci proverò. 

Luca E.
@ANDREA P. crea una pagina php nella cartella product, inserisci il codice che trovi sotto, inserisci le variabili che ti ho evidenziato dopo le // apri la pagina con il nome che hai scelto + lo "slug" (esempio: miapagina.php?slug=xxxx) xxxx sta per il nome del prodotto che vedi nell'url del podotto e come per magia dovresti avere a video solo i prodotti disponibili per la categoria del prodotto. Dovrai solo ricreare il div dello slider e richiamarlo con un jquery replace. Se non ci riesci appena posso cerco di farlo... Ciao <?php $conn = new mysqli( "", //host DB "", //username DB "", //password DB "" //table DB ); mysqli_connect_errno(); $tabella = ""; // TABLE prefix $tabella .= 'dynamicproducts'; function search_in_cart($start,$end,$string, $borders=true){ $reg="!".preg_quote($start)."(.*?)".preg_quote($end)."!is"; preg_match_all($reg,$string,$matches); if($borders) return $matches[0]; else return $matches[1]; } function relatedProdukt($slug){ $cart_php = file_get_contents("../cart/x5cart.php"); $cart_array_one = search_in_cart("'slug' => '$slug',", "'productPageDetailsRichText' => array" , $cart_php); $cart_array_two = search_in_cart("'relatedProducts' => array(", ")," , $cart_array_one[0]); $cart_array_two = str_replace(array("'relatedProducts' => array(","),"),"",$cart_array_two[0]); $cart_array_two = str_replace("'","",$cart_array_two); return trim($cart_array_two); } function getStock($id,$tabella){ global $conn; $out = ""; $sql = "SELECT * FROM $tabella WHERE id = '$id' "; $result = $conn->query($sql); while($row = $result->fetch_array()) { //$row=$result->fetch_assoc(); $quantity = $row['quantity']; } if ($quantity > 0){ return "Item:$id is AVAILABLE with =>$quantity pieces in stock"; } else { return "Item:$id is UNAVAILABLE =>$quantity pieces"; } } $the_array = relatedProdukt($_GET['slug']); $single_item = explode(",",$the_array); foreach ($single_item as $num => $item) { $item = trim($item); echo getStock($item,$tabella); echo "<br>"; } ?>
Lire plus
Posté le de Andrea P.
Luca E.
Luca E.
User

Fammi sapere

Lire plus
Posté le de Luca E.