WebSite X5Help Center

 
Francesco F.
Francesco F.
User

Quantità minima di acquisto su prodotto E-Commerce  it

Autore: Francesco F.
Visite 2072, Followers 5, Condiviso 0  

Buonasera

Vorrei sapere se fosse possibile impostare una quantità minima di prodotto ordinabile sul sito e-commerce fatto con incomedia.

Mi spiego con un esempio:

Vendo il prodotto A a 1,40€.

Però posso venderlo solo per quantità superiori a 5: non da 1 a 4, ma da 5 in su (quindi 5,6,7,8,... prodotti A).

è possibile impostare questo su Incomedia?

Postato il
22 RISPOSTE - 4 UTILI
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... prova con queste opzioni: > ▪Consenti Ordine solo per importi minimi

----------------------------------

(... purtroppo attualmente non ho il programma, ma in teoria un controllo EXTRA per Esperti al momento della digitazione della quantità si potrebbe ottenere in JS se:

1) – la pagina con i campi di input fosse presente al Passo_3 e/o  tra le "pagine speciali";
2) – il campo di input avesse un nome/ID;)

.



Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Francesco F.
Francesco F.
User
Autore

Grazie per la risposta

Purtroppo consentire un ordine per importi minimi non risolve il problema, poiché si potrebbe raggiungere comunque l'importo minimo totale dell'ordine ordinando 1 singolo elemento di molteplici prodotti, invece avrei bisogno di impostare un limite minimo di quantità sull'acquisto di ogni singolo prodotto (da 5 in su).

Il programma è incomedia website X5 Professional. Non vedo possibile questa opzione quando si inserisce la categoria "catalogo prodotti" in una pagina. Non c'è nessun modo di poterlo fare all'interno appunto dell'oggetto "catalogo prodotti/impostazioni"?

Non ho capito bene questo passaggio:

(... purtroppo attualmente non ho il programma, ma in teoria un controllo EXTRA per Esperti al momento della digitazione della quantità si potrebbe ottenere in JS se:

1) – la pagina con i campi di input fosse presente al Passo_3 e/o  tra le "pagine speciali";
2) – il campo di input avesse un nome/ID;)

Leggi di più
Postato il da Francesco F.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
Francesco F.
... ...  Non c'è nessun modo di poterlo fare all'interno appunto dell'oggetto "catalogo prodotti/impostazioni"? Non ho capito bene questo passaggio: (... purtroppo attualmente non ho il programma, ... ... 

... non ho né PC e né programma, ...ma prova lo stesso a postare il LINK di questa pagina, o un esempio online, di dove inserisci le quantità...

.

ciao

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Henry H.
Henry H.
User

Il sito Web x5 ha un'opzione di ordine di quantità minima, prova a testare questa opzione per questo particolare articolo ma ho notato che non è in base alla quantità di articoli, ma al prezzo. Questo è sbagliato non dovrebbe essere per l'importo del prezzo da solo

--------------------------------------------------------------------------------------------------------------------------

Website x5 cuenta con una opción de pedido de cantidad minima, trate de provar esta opción para este tema en particular pero me ha dado cuenta que no es por cantidad de articulos si no de precio. Esto esta mal no deberia ser por precio solo cantidad

Leggi di più
Postato il da Henry H.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
Francesco F.
Ok, ecco il link del sito con base Macromedia Website X5 https://www.vivaiomediterraneo.it/online/vasi-piccoli-arbusti-alberi.html

(...Macromedia!...undecided...)

... ti anticipo, che se fai una ricerca, e se non ricordo male, dovresti trovare qualche proposta già postata da lemonsong, magari più valida e/o adatta al tuo scopo...

... invece, sulla base della la mia idea esclusiva, guardando la tu pagina, mi sono inventato questo codice unico!...

... non avendo io il programma, ...sta a te provare a vedere se funzionawink; ...il minimo totale come puoi vedere è impostato sul "5", che ovviamente potrai personalizzare, ...come anche il tempo di reazione che è impostato ad un sec. (1000)(ms)...

... incolla il codice nella sezione esperto al:

>>Passo 3 - Mappa > Finestra Proprietà Pagina > Le opzioni della Sezione Esperto | Codice personalizzato: >Prima della chiusura del tag BODY

... codice da incollare:

<script> var elements = document.querySelectorAll("[id^='product_']");
minimK = 5; // valore minimo
for(var e in elements){ elements[e].value= '0'; // azzero valori K = "0";
function inputK (idK) { erroreK = "(!) - K - valore errato a minore di " + minimK + " (!)" ; // messaggio
setTimeout(function(){if(isNaN(valK) || valK<minimK){alert(valK + erroreK );document.getElementById(idK).value =0;}}, 1000);}
elements[e].oninput = function () { idK= this.id;valK=this.value;inputK(idK);}} </script>

.

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Francesco F.
Francesco F.
User
Autore
 ‪ KolAsim ‪ ‪
Francesco F. Ok, ecco il link del sito con base Macromedia Website X5 https://www.vivaiomediterraneo.it/online/vasi-piccoli-arbusti-alberi.html (...Macromedia!......) ... ti anticipo, che se fai una ricerca, e se non ricordo male, dovresti trovare qualche proposta già postata da lemonsong, magari più valida e/o adatta al tuo scopo... ... invece, sulla base della la mia idea esclusiva, guardando la tu pagina, mi sono inventato questo codice unico!... ... non avendo io il programma, ...sta a te provare a vedere se funziona; ...il minimo totale come puoi vedere è impostato sul "5", che ovviamente potrai personalizzare, ...come anche il tempo di reazione che è impostato ad un sec. (1000)(ms)... ... incolla il codice nella sezione esperto al: >>Passo 3 - Mappa > Finestra Proprietà Pagina > Le opzioni della Sezione Esperto | ▪Codice personalizzato: >▼Prima della chiusura del tag BODY ... codice da incollare: <script> var elements = document.querySelectorAll("[id^='product_']"); minimK = 5; // valore minimo for(var e in elements){ elements[e].value= '0'; // azzero valori K = "0"; function inputK (idK) { erroreK = "(!) - K - valore errato a minore di " + minimK + " (!)" ; // messaggio setTimeout(function(){if(isNaN(valK) || valK<minimK){alert(valK + erroreK );document.getElementById(idK).value =0;}}, 1000);} elements[e].oninput = function () { idK= this.id;valK=this.value;inputK(idK);}} </script> .


Oddio sì Incomedia!! laughing

Grazie mille!! Funziona, problema risolto! smile

Leggi di più
Postato il da Francesco F.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

...surprised...!... ... grazie per la conferma......smile...wink...

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Francesco F.
Francesco F.
User
Autore

Uff, rimane una questione apertacry (come accade spesso in questi casi)

Anche se ne metto 4 nel carrello, poi la quantità è modificabile dal carrello stesso e può essere portata anche a 1. Per risolvere il problema serivrebbe un piccolo algoritmo con una lista di controllo dove ci sono i nomi prodotti e le relative quantità minime ordinabili, in modo da effettuare un controllo anche sul carrello.

Leggi di più
Postato il da Francesco F.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
Francesco F.
... ... Anche se ne metto 4 nel carrello, poi la quantità è modificabile dal carrello stesso e può essere portata anche a 1. ... ...

... se la pagina della pagina del carrello fosse presente l'Alias tra le pagine speciali, in basso al Passo_3, allora forse!! potrebbe essere possibile usare anche lì lo stesso codice, sempre se gli ID in gioco fossero uguali o simili o da rivedere...
... ... senza programma non posso entrare nel merito, ma facendo una rapida ricerca ho trovato questo Topic, preannunciato prima (autori lemonsong-stesil), che potrebbe forse fare al caso tuo:    https://helpcenter.websitex5.com/it/post/99593
.

... eventualmente, per poter avere supporto anche da ALTRI, togli il CORRETTO che mi avevi assegnato... ciao...

.

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Francesco F.
Francesco F.
User
Autore

Ok sì, confermo che il carrello è fra le "pagine speciali".

Questo script, tratto dalla pagina che mi avevi consigliato, funziona egregiamente, anche se il tuo codice è sicuramente meglio perché blocca subito chi cerca di "fare il furbo" e mettere meno quantità. (il codice di lemonsong blocca quando si preme su "avanti" per procedere all'acquisto con le quantità inadatte) 

Per far comunque funzionare questo codice sul sito, dovrei mettere un if, per fargli bloccare solo determinati prodotti in base al prezzo (se il prezzo è minore di X, allora la quantità minima è ...) .
Qualcuno sa come posso identificare la variabile "prezzo" di ciascun prodotto nel carrello?


Script di Lemonsong:

<script>

$('#imCartContainer').on('click', 'div #btngonext', function() {

var qt = 0;

$('#imCartContainer table input[data-hash]').each(function() {

qt = parseInt($(this).val());

return (qt);

});

if (qt < 5) {top.location.hash = "#step1";

alert("Devi acquistare un minimo di 5 prodotti!");

}

});
</script>

Leggi di più
Postato il da Francesco F.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
Francesco F.
Ok sì, confermo che il carrello è fra le "pagine speciali". ... ... ... ... 

... allora potresti provare un mio pseudo! escamotage, diciamo maccheronico, ...se va va!! (x sez. /HEAD):

<style> td:nth-child(3):before { content:"_____"; font-size:30px;
position:relative;left:50px;top:5px;opacity:0;z-index:300000;} </style>

Francesco F.

... ...  dovrei mettere un if, per fargli bloccare solo determinati prodotti in base al prezzo... ...

... ... ... ... 

... col mio metodo si potrebbe ottenere un certo condizionamento, ma diventerebbe lungo il procedimento, mirato ID x ID, e nel caso ti interessasse ancora poi vedremo come fare, sempre relativamente al mio codice...

.

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Francesco F.
Francesco F.
User
Autore
 ‪ KolAsim ‪ ‪
<style> td:nth-child(3):before { content:"_____"; font-size:30px; position:relative;left:50px;top:5px;opacity:0;z-index:300000;} </style>


Ok, ora è bloccato l'inserimento manuale della quantità, l'espediente funziona. I clienti perderebbero però la possibilità di modificare la quantità dal carrello, che di solito usano per ridefinire l'ordine in fase finale.

Sì, se ci fosse un modo di identificare l'ID sarebbe il massimo.

Leggi di più
Postato il da Francesco F.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
Francesco F.
 ‪... ... ... ...  Sì, se ci fosse un modo di identificare l'ID sarebbe il massimo.

... OK, ... il codice condiziona solo le prime due celle di input del precedente LINK:
(product_17xk5dupj_qty  | product_15kif0edp_qty)

<script> minimK = 5;
var elements = document.querySelectorAll("[id^='product_']");for(var e in elements){ elements[e].value= '0';}
function inputK (idK) { erroreK = " (!) - valore errato o minore di 5 (!)" ;
setTimeout(function(){ if(isNaN(valK) || valK<minimK ){alert(valK + erroreK );document.getElementById(idK).value =0;} }, 1000);}
product_17xk5dupj_qty.oninput = function () { idK= this.id;valK=this.value;inputK(idK);}
product_15kif0edp_qty.oninput = function () { idK= this.id;valK=this.value;inputK(idK);}
//*********** qui a seguire inserire tutti gli altri ID dei campi INPUT da condizionare ***
</script>

.

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Francesco F.
Francesco F.
User
Autore

Ok, il codice per i singoli ID funziona benissmo, è perfetto e molto utile per le pagine del sito.

Mi scuso se mi sono spiegato male, putroppo questo tipo di codice non funziona nella pagina speciale "carrello e-commerce", per la quale funziona bene solo lo script di lemonsong, che non ha però possibilità di discernere i prodotti che costano meno di un tot (1,40€) per i quali c'è la limitazione di un minimo di 4 ordinabili e tutti gli altri prodotti, o in alternativa per i singoli ID di prodotto.

Leggi di più
Postato il da Francesco F.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... forse dovresti usare carrelli separati ed omogenei nelle opzioni...
... intanto da provare in alternativa a precedente escamotage per il carrello, ed alla cieca, mi sono inventato > questo altro codice, ma influisce a livello globale, per cui tutti i valori del carrello dovrebbero avere la stessa limitazione...

.

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Francesco F.
Francesco F.
User
Autore
 ‪ KolAsim ‪ ‪
... forse dovresti usare carrelli separati ed omogenei nelle opzioni...


Ho cercato ma purtroppo questa opzione non è proprio presente nel software (vedi foto allegata).


In ogni caso confermo che questo tipo di codice:

<script>
minimK = 5; // valore minimo
var elements = document.querySelectorAll("input");
for(var e in elements){ function inputK (idK) { erroreK1 = "... è stato digitato il valore "; erroreK2 = " (!) ... \n ... il valore non può essere inferiore a " + minimK + " (!)" ;
setTimeout(function(){ if(isNaN(valK) || valK<minimK){alert(erroreK1 + valK + erroreK2 ); }}, 1000);} elements[e].oninput = function () { idK= this.id;valK=this.value;inputK(idK); if(this.value < 5){ this.value=5;} } }
</script>

è davvero molto utile per le pagine normali ma NON funziona per la pagina speciale del carrello, per la quale funziona ad ora solo lo script di lemonsong:

<script>

$('#imCartContainer').on('click', 'div #btngonext', function() {

var qt = 0;

$('#imCartContainer table input[data-hash]').each(function() {

qt = parseInt($(this).val());

return (qt);

});

if (qt < 5) {top.location.hash = "#step1";

alert("Devi acquistare un minimo di 5 prodotti!");

}

});
</script>

che però per come è scritto ora non ha la capacità di discernere i prodotti che vanno limitati da quelli che non vanno limitati, i quali si possono distinguere in base al prezzo o semplicemente dall'ID.

Leggi di più
Postato il da Francesco F.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
Francesco F.
 ‪ ... ...  In ogni caso confermo che questo tipo di codice: <script> minimK = ***** </script> è davvero molto utile per le pagine normali ma NON funziona per la pagina speciale del carrello, ... ... 

... infatti era progettato per la pagina dei prodotti, quella che hai linkato...

...ma, solo per averne una conferma o meno, il mio ultimo codice fatto proprio per il carrello, non ti funziona...?...

... il codice è quello del mio ultimo e precedente esempio ed è SOLO quello compreso tra le righe 28-40 ... (Ctrl+U) ...da incollare "Prima della chiusura del TAG /BODY"...

... grazie se proverai e me lo farai sapere...

.

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Francesco F.
Francesco F.
User
Autore

...ma, solo per averne una conferma o meno, il mio ultimo codice fatto proprio per il carrello, non ti funziona...?...

... il codice è quello del mio ultimo e precedente esempio ed è SOLO quello compreso tra le righe 28-40 ... (Ctrl+U) ...da incollare "Prima della chiusura del TAG /BODY"...

[/quote]

Purtroppo no, è proprio quello che ho incollato nel precedente commento, dalle righe 28-40. Non vuole saperne di girare. Se vuoi vedi direttamente il codice del carrello (lo script è stato aggiunto):

https://www.vivaiomediterraneo.it/online/cart/index.html


PS.
non è che ci sarebbe un modo semplice, per quanto riguarda il codice per le pagine, di bloccare i numeri troppo bassi invece che con il timer con l'evento "click" su aggiungi? sennò potrebbe bloccare l'inserimento anche di altri numeri successivi, per esempio se volessi inserire "28", quando si digita solo il "2", se non digiti abbastanza velocemente l'8 lo blocca e lo riporta a 5.

Leggi di più
Postato il da Francesco F.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... grazie per il test; ...mi dispiace,; ...purtroppo vedo che non funziona come nel mio esempio...undecided...

... se vuoi, prova > questa variante ... righe 36-50 ... 

... al PS. ...per l'attesa input, questa è impostata ad un secondo (1000) (ms), volendo puoi aumentare a due secondi (2000) (ms), o un valore a tua preferenza...

.

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Francesco F.
Francesco F.
User
Autore
 ‪ KolAsim ‪ ‪
... grazie per il test; ...mi dispiace,; ...purtroppo vedo che non funziona come nel mio esempio...... ... se vuoi, prova > questa variante ... righe 36-50 ... 


Nada, pare che non lo riconosca. Ma non c'è proprio modo di cambiare lo script di Lemonsong per aggiungere un controllo sul prezzo o ancora meglio sugli ID? Oppure di contattarlo direttamente per chiedergli di modificare il suo stesso script?

 ‪ KolAsim ‪ ‪

... al PS. ...per l'attesa input, questa è impostata ad un secondo (1000) (ms), volendo puoi aumentare a due secondi (2000) (ms), o un valore a tua preferenza...



Purtroppo per il valore di 2 secondi o più l'utente avrebbe tutto il tempo di cliccare su "aggiungi" al carrello

Leggi di più
Postato il da Francesco F.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... da parte mia più di quanto fatto senza strumenti non posso immaginare altro...

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪