Jump to content

[RISOLTO] Idea per modulo "spedizione gratis tra..."


PEPPE83

Recommended Posts

Ciao a tutti, credo sia un'idea facilmente sviluppabile ma le mie scarse conoscenze me lo impediscono e non ho trovato nulla a riguardo (o non ho saputo cercare).

Siccome il mio ecommerce come tanti altri che usano prestashop offre al raggiungimento di una somma la spedizione gratuita sarebbe interessante poter sviluppare una delle seguenti idee in modo da incentivare gli acquisti quando manca poco al raggiungimento dell'obiettivo, queste sono quelle a cui ho pensato io:

 

- inserire una specie di countdown nel carrello che mostra la cifra rimanente per la spedizione gratuita, tipo una dicitura "spedizione gratis tra: XX €.

- un popup dopo l'aggiunta di un prodotto che ricorda della spedizione gratuita.

- come sopra per il carrello ma un modulo da inserire sul lato destro o sinistro.

 

Mi aiutate a creare una delle 3 opzioni?

Grazie!!!

Edited by PEPPE83 (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

Ok, ho trovato all'interno del forum inglese come attuare la prima modifica, cioè una scritta che aggiorna quanto manca alla spedizione gratuita. questo è il link per chiunque fosse interessato:

http://www.prestasho...post__p__866294

 

Ciao, io uso una versione di PS più vecchia 1.3.6 e la cosa che chiedi te mi pare già sia integrata.

Io ad esempio nel mio sito ho fissato a 80 euro le spediz. gratuite e quando l'utente aggiunge un'oggetto al carrello in basso gli dice quanto gli serve per arrivare alle spedizioni gratuite...

Link to comment
Share on other sites

  • 6 months later...

Ciao Peppe,

 

ho visto il post e mi sembra ottimo ma nel link ho pure visto che chiedevi come fare per aggiornare il costo rimanente senza dover fare un refresh della pagina.

 

hai capito come si fa?

grazie

Daniele

Link to comment
Share on other sites

Ciao Peppe,

 

ho visto il post e mi sembra ottimo ma nel link ho pure visto che chiedevi come fare per aggiornare il costo rimanente senza dover fare un refresh della pagina.

 

hai capito come si fa?

grazie

Daniele

 

Ciao, è una discussione di qualche tempo fà,e il carrello si aggiorna in tempo reale, nel tema che uso io quella funzionalità (non chiedermi il perchè) era disattivata (commentata).

Link to comment
Share on other sites

Ciao Peppe,

grazie.

non riesco però a capire in quale punto inserire il codice.

giusto per info non uso il tema di default.

il file da modificare

modules/blockcart/blockcart.php

è quello nella cartella generica modules, giusto?

 

se fosse così non riesco proprio a capire dove va aggiunto il codice.

mi riusciresti a indicare passo passo come intervenire?

scusami per la richiesta azzardata ma mi sembra di andare a tentoni in mezzo al codice...

grazie mille.

 

file: modules/blockcart/blockcart.php

info: addin function smartyAssigns()

this code:

	  $total_free_ship = 0;
	if ($free_ship = Tools::convertPrice((float)(Configuration::get('PS_SHIPPING_FREE_PRICE')),
	new Currency((int)($params['cart']->id_currency))))
	{
		$discounts = $params['cart']->getDiscounts();
		$total_free_ship =  $free_ship - ($params['cart']->getOrderTotal(true, Cart::ONLY_PRODUCTS)
		+ $params['cart']->getOrderTotal(true, Cart::ONLY_DISCOUNTS));
		foreach ($discounts as $discount)
			if ($discount['id_discount_type'] == 3)
			{
				$total_free_ship = 0;
				break;
			}
	}

	$smarty->assign(array(
		'free_ship' =>Tools::displayPrice($total_free_ship, $currency),
		..... rest code...

 

 

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

file: themes/YOUR_THEME/modules/blockcart/blockcart.tpl

info: add before line

<p id="cart-buttons" class="clearfix">

this code:

{if $free_ship > 0}
<p id="cart_block_free_ship">
{l s='Dla darmowej wysyłki dodaj produkty na kwotę:' mod='blockcart'}
<span  class="price ajax_block_cart_free_ship">{$free_ship}</span>
<br/>
</p>	
{/if}

 

 

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

file: modules/blockcart/blockcart-json.tpl

info: add before line

"shippingCost":

this code:

"free_ship": "{$free_ship|html_entity_decode:2:'UTF-8'}",

 

 

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

file: modules/blockcart/ajax-cart.js

info: add after line

$('.ajax_block_cart_total').text(jsonData.total);

this code:

$('.ajax_block_cart_free_ship').text(jsonData.free_ship);

	if(parseInt(jsonData.free_ship) > 0)
	{
		$('#cart_block_free_ship').fadeIn('slow');
	}else{
		$('#cart_block_free_ship').hide();

	}

Link to comment
Share on other sites

Il file da modificare è quello del tema (che ha la precedenza se presente rispetto quelli di default).

Dovresti trovarlo in /themes/tuotema/modules/blockcart

dove "tuotema" è il nome del tema che utilizzi.

Link to comment
Share on other sites

Ciao Peppe,

grazie per la risposta ma allora il io dubbio è anche più forte:

nel modulo blockcart del mio tema gli unici file .php sono quelli delle lingue

 

ecco cosa trovo nella cartella

it.php

fr.php

de.php

blockcart.tpl

blockcart-json.tpl

blockcart-json - Kopia.tpl

blockcart - Kopia.tpl

 

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

se i moduli del tema usato hanno la priorità sul tema di default, mi sapresti dire funzione hanno i moduli della cartella modules nella root principale?

grazie

Link to comment
Share on other sites

  • 4 months later...

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...