Pagina 1 di 1
Spese di spedione
Inviato: 01/10/2008, 10:21
da wizard
Salve,
ho la necessità di abilitare diversi tipi di spedizione a seconda del peso dei pacchi.
Paccocelere1 e Paccocelere3 fino a 69 Kg con le relative tariffe
Corriere Espresso da 70 Kg in poi.
Per i primi due è tutto ok, per il corriere espresso non so cosa scrivere affinchè il metodo di spedizione venga abilitato solo quando i pacchi arrivano a 70 Kg.
Scrivendo così: 70:45.00,190:72.00,207:72.00 - mi appare la scelta anche se il peso è inferiore a 70 Kg.
Grazie dell'attenzione.
Saluti a tutti
Re: Spese di spedione
Inviato: 01/10/2008, 14:29
da robysoldtamiya
Certo, perchè 70:45.00 vuol dire che fino a 70Kg il costo è di 45e.
Sinceramente non so come intervenire per escludere <70Kg senza intervenire nel codice.
Una scappatoia sarebbe di mettere un importo spedizione fasullo tipo 70:9999 così il cliente si rende conto che il prezzo è pazzo, ma è giusto una scappatoia.
Roby
Re: Spese di spedione
Inviato: 01/10/2008, 21:10
da wizard
robysoldtamiya ha scritto:Certo, perchè 70:45.00 vuol dire che fino a 70Kg il costo è di 45e.
Sinceramente non so come intervenire per escludere <70Kg senza intervenire nel codice.
Una scappatoia sarebbe di mettere un importo spedizione fasullo tipo 70:9999 così il cliente si rende conto che il prezzo è pazzo, ma è giusto una scappatoia.
Roby
Grazie, ma non è proprio ortodosso mettere un prezzo fasullo.
Qualcuno mi potrebbe aiutare anche con il codice??
Re: Spese di spedione
Inviato: 01/10/2008, 21:42
da robysoldtamiya
Nel modulo spedizione che ti interessa che trovi in catalog\includes\modules\shipping puoi aggiungere un test all'inizio della function 'quote' così
Codice: Seleziona tutto
function quote($method = '') {
global $order, $shipping_weight, $shipping_num_boxes;
// Disabilita modulo per peso < 70Kg
if ($shipping_weight < 70) {
$error = true;
$error_text = MODULE_SHIPPING_POSTEPOSTAPRIORITARIA_UNDEFINED_RATE;
$this->quotes['error'] = $error_text;
return $this->quotes;
}
sostituisci 'MODULE_SHIPPING_POSTEPOSTAPRIORITARIA_UNDEFINED_RATE' con la corrispondente variabile che trovi nel codice
Re: Spese di spedione
Inviato: 01/10/2008, 21:52
da wizard
Grazie
appena posso faccio la prova.
Re: Spese di spedione
Inviato: 01/10/2008, 21:54
da marcus
wizard ha scritto:Salve,
ho la necessità di abilitare diversi tipi di spedizione a seconda del peso dei pacchi.
Paccocelere1 e Paccocelere3 fino a 69 Kg con le relative tariffe
Corriere Espresso da 70 Kg in poi.
Per i primi due è tutto ok, per il corriere espresso non so cosa scrivere affinchè il metodo di spedizione venga abilitato solo quando i pacchi arrivano a 70 Kg.
Scrivendo così: 70:45.00,190:72.00,207:72.00 - mi appare la scelta anche se il peso è inferiore a 70 Kg.
Grazie dell'attenzione.
Saluti a tutti
Nel modulo catalog/includes/modules/shipping/corriere.php modifica il codice seguente:
da:
Codice: Seleziona tutto
for ($i=0; $i<$size; $i+=2) {
if ($shipping_weight <= $zones_table[$i]) {
$shipping = $zones_table[$i+1];
$shipping_method = MODULE_SHIPPING_CORRIERE1_TEXT_WAY;
break;
}
}
a:
Codice: Seleziona tutto
for ($i=0; $i<$size; $i+=2) {
if ($i==0) {
if ($shipping_weight < $zones_table[$i]) {
$shipping_cost = 0;
$error = true;
$error_text = MODULE_SHIPPING_CORRIERE1_UNDEFINED_RATE;
break;
}
}
if ($shipping_weight <= $zones_table[$i]) {
$shipping = $zones_table[$i+1];
$shipping_method = MODULE_SHIPPING_CORRIERE1_TEXT_WAY;
break;
}
}
Questa soluzione ha il vantaggio di non dover mettere mano al codice se varia il peso minimo.
Ovviamente se nel tuo modulo ci sono delle differenze nei nomi delle variabili e costanti devi tenerne conto.
Saluti
Marcus
Re: Spese di spedione
Inviato: 01/10/2008, 22:07
da wizard
Funziona!!!
Di nuovo grazie!!!
Re: Spese di spedione
Inviato: 01/10/2008, 22:14
da wizard
marcus ha scritto:wizard ha scritto:Salve,
ho la necessità di abilitare diversi tipi di spedizione a seconda del peso dei pacchi.
Paccocelere1 e Paccocelere3 fino a 69 Kg con le relative tariffe
Corriere Espresso da 70 Kg in poi.
Per i primi due è tutto ok, per il corriere espresso non so cosa scrivere affinchè il metodo di spedizione venga abilitato solo quando i pacchi arrivano a 70 Kg.
Scrivendo così: 70:45.00,190:72.00,207:72.00 - mi appare la scelta anche se il peso è inferiore a 70 Kg.
Grazie dell'attenzione.
Saluti a tutti
Nel modulo catalog/includes/modules/shipping/corriere.php modifica il codice seguente:
da:
Codice: Seleziona tutto
for ($i=0; $i<$size; $i+=2) {
if ($shipping_weight <= $zones_table[$i]) {
$shipping = $zones_table[$i+1];
$shipping_method = MODULE_SHIPPING_CORRIERE1_TEXT_WAY;
break;
}
}
a:
Codice: Seleziona tutto
for ($i=0; $i<$size; $i+=2) {
if ($i==0) {
if ($shipping_weight < $zones_table[$i]) {
$shipping_cost = 0;
$error = true;
$error_text = MODULE_SHIPPING_CORRIERE1_UNDEFINED_RATE;
break;
}
}
if ($shipping_weight <= $zones_table[$i]) {
$shipping = $zones_table[$i+1];
$shipping_method = MODULE_SHIPPING_CORRIERE1_TEXT_WAY;
break;
}
}
Questa soluzione ha il vantaggio di non dover mettere mano al codice se varia il peso minimo.
Ovviamente se nel tuo modulo ci sono delle differenze nei nomi delle variabili e costanti devi tenerne conto.
Saluti
Marcus
Ottimo va bene anche questo metodo.
Di nuovo grazie tante a tutti
Re: Spese di spedione
Inviato: 03/10/2008, 11:51
da wizard
Ciao ragazzi,
dopo aver fatto le modifiche al modulo mi da questo errore:
Warning: Cannot modify header information - headers already sent by (output started at /home/gemiaspi/public_html/ecommerce/includes/languages/italian/modules/shipping/corriere1.php:49) in /home/gemiaspi/public_html/ecommerce/includes/functions/general.php on line 33
ho provato a rirpistinare tutto com'era, ma l'errore resta.
Avete qualche idea??
Per il momento ho dovuto disabilitare il modulo.....
Grazie
Re: Spese di spedione
Inviato: 03/10/2008, 12:33
da marcus
wizard ha scritto:Ciao ragazzi,
dopo aver fatto le modifiche al modulo mi da questo errore:
Warning: Cannot modify header information - headers already sent by (output started at /home/gemiaspi/public_html/ecommerce/includes/languages/italian/modules/shipping/corriere1.php:49) in /home/gemiaspi/public_html/ecommerce/includes/functions/general.php on line 33
ho provato a rirpistinare tutto com'era, ma l'errore resta.
Avete qualche idea??
Per il momento ho dovuto disabilitare il modulo.....
Grazie
Quale modifica hai applicato?
Hai modificato il file di lingua?
Controlla bene che non vi siano spazi all'inizio o alla fine del file di lingua.
Saluti
Marcus
Re: Spese di spedione
Inviato: 03/10/2008, 12:35
da wizard
Ciao,
ho solo copiato ed incollato il codice che mi avete dato.
Nel file della lingua ho solo cambiato la scritta che mi appare quando la spedizione non è disponibile.
Re: Spese di spedione
Inviato: 03/10/2008, 12:58
da wizard
Ora in admin mi dà questo errore:
Cannot redeclare class corriere1 in /home/gemiaspi/public_html/ecommerce/includes/modules/shipping/corriere1.php on line 19
Re: Spese di spedione
Inviato: 03/10/2008, 13:09
da wizard
Ho fatto prove su prove ed ora sembra funzionare tutto bene, ma non chiedetemi come ho fatto!!