Dalla versione 2.4 di Woocommerce, le tariffe di spedizione hanno subito delle variazioni, in teoria sono state semplificate, nella pratica però alcuni utenti si stanno trovando in difficoltà in merito alle tariffe aggiuntive.
Nelle versioni precedenti era possibile aggiungere tariffe aggiuntive attraverso l’interfaccia, attualmente invece è necessario metter mano al codice. Per aggiungere delle tariffe personalizzate è necessario aggiungere il codice seguente al file functions.php : (lavorate sempre su un tema child, altrimenti perderete ogni personalizzazione in seguito ad aggiornamenti del tema parent)
add_action( 'woocommerce_flat_rate_shipping_add_rate', 'add_another_custom_flat_rate', 10, 2 ); function add_another_custom_flat_rate( $method, $rate ) { $new_rate = $rate; $new_rate['id'] .= ':' . 'custom_rate_name'; // Append a custom ID $new_rate['label'] = 'Nome spedizione'; // Inserite il nome della spedizione $new_rate['cost'] += 2; // Aggiungi 2 €(o $ ) al prezzo // Aggiungi a WC $method->add_rate( $new_rate ); }
Se volete ripristinare le “Tariffe aggiuntive” in Spedizione -> Tariffa unica, procedete inserendo nel file functions.php il codice:
add_filter( 'woocommerce_enable_deprecated_additional_flat_rates', '__return_true' );
Per qualsiasi richiesta, lasciate pure il vostro commento 😉
Ho necessità di determinare le spese di spedizione in base al tipo di oggetto ordinato. nel senso che se ordini l’oggetto 111 dovrai per forza scegliere di spedire per corriere, mentre se ordini 222 potrei scegliere sia il corriere sia la posta ordinaria.
Non riesco a farlo e ho gente che mi ordina oggetti 111 pagando la spedizione ordinaria (ovviamente impossibile)
Come posso risolvere?
Grazie mille
Ciao…ho avuto in passato una necessità simile configurando un ecommerce. In quel caso ho utilizzato le classi di spedizione. Prova e fammi sapere 🙂
Grazie per la risposta rapida
Ho provato ma non mi consente di assegnare una cifra alla classe di spedizione e non me la fa figurare da nessuna parte ….sbaglio io a congigurare probabilmente
Dopo aver creato le classi di spedizione che ti occorrono, devi andare tra le impostazioni woocommerce, spedizione e infine nella scheda “tariffa unica”
Sto cercandi di domarlo
Ma devo impostare ed abilitare solo UNA tariffa e sotto elencare il costo delle classi?
L’utilizzo delle classi è relativo alla tariffa unica. Le spedizioni sono sempre un pò problematiche con woocommerce e talvolta è necessario ricorrere a plugin aggiuntivi. Ad ogni modo, se le tue necessità lo consentono puoi dare ad ogni prodotto una classe differente e quindi importi di spedizione differenti.
Grazie mille
Ora funziona perfettamente
caffè pagato
Bravo! Buon lavoro 😉
Ciao dovrei aggiungere un costo aggiuntivo ( un’assicurazione) che si basa sul totale speso, ma ovviamente il cliente deve avere la possibilità di sceglierla o no… come potrei fare? Grazie mille!!
Ciao Francesca, vedi se questo può esserti utile http://wordpress.stackexchange.com/questions/121459/additional-optional-fee-on-woocommerce-checkout . Non ho testato il corretto funzionamento, magari farò un articolo a riguardo dopo aver studiato il codice. 😉
Grazie mille!! Sembra proprio il mio caso… peccato che non essendo programmatrice ho capito poco ma… proverò a copiare quel codice… ma il $product_id da cambiare come lo trovo io? Scusa la domanda forse ovvia ma.. Non sono esperta!!! Ancora grazie.. mi stai risolvendo un gran problema…
Nella lista dei prodotti trovi anche l’ID corrispondente 😉
Grazie!!
Giusto per aggiornarti funziona ma ad ogni refresh della pagina aumenta le quantità del prodotto ..quindi dal carrello al check out da uno passa a due… uff!!
Ciao Francesca, ho testato il codice e non ho riscontrato il tuo problema. Ti raccomando di inserire l’id correttamente in entrambi i punti del codice.
Ho inserito in entrambi i punti ma niente…
Ciao LAbDesign80, ho visto il codice suggerito da te per l’aggiunta dell’assicurata, a me servirebbe che l’utente potesse scegliere se aggiungere il costo dell’assicurata, se sceglie corriere1 assicurazione del xx% entro tot € altrimenti assicurazione del xy%
Non so se mi sono saputo spiegare
Grazie 🙂
Ciao Natale, il suggerimento che posso darti per questo tipo di personalizzazione è quello di aggiungere una estensione di WooCommerce, Payment Gateway Based Fees. Verifica che possa soddisfare tutte le necessità del tuo sito.
https://woocommerce.com/products/payment-gateway-based-fees/
Grazie per la risposta ma purtroppo non è cioè che cerco, perchè questo plugin permette di mettere un solo costo aggiuntivo, a me servirebbe aggiungere in funzione del totale del carrello in base al corriere scelto.
Quindi se scelgo corriere1
sotto i 100€ totale di carrello –> assicurazione 5€
oltre 100€ totale di carrello –> assicurazione 8€
Ciao LAbDesign80, dovrei inserire un supplemento per la spedizione in zone disagiate (12.00 euro che si devono sommare alle 9.00 euro della spedizione standard)…come posso farlo? tramite codice o plugin?
mi dai qualche suggerimento?
Grazie mille
Buongiorno Giusy, per la sua richiesta occorre fare qualche customizzazione, questo articolo non fa al caso suo. Eviterei l’uso di plugin per non sovraccaricare WordPress e altri motivi. Le consiglio di rivolgersi al suo sviluppatore che saprà come procedere.