Jump to content

No mostrar coste transporte en el carrito


marknopfler

Recommended Posts

Holas!
Me gustaría no mostrar (ni calcular) el precio del transporte en el carrito ajax del header hasta que no se vaya a hacer el pago del pedido. 
Hay alguna manera de deshabilitar eso y solo habilitar el cálculo del transporte una vez el cliente vaya a pagar?
Tengo el PS 1.7

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

Te dejo el mio:

En el TPL de carrito ajax busca la línea donde muestra el porte: para mi caso es : <div class="shipping">XXXX </div>

El script hace lo siguiente:

Si el usuario no está logeado la muestra vacía.

Si está registrado sin dirección (si existe el país) selecciona la muestra vacía.

Si está registrado y con dirección (si existe el país) :

-> Le coloca la bandera del país.

->Si el porte es 0 y el país es ES o PT le pone GRATIS,

->Si el porte es 0 y el país NO es ES o PT le pone CONSULTAR PRECIO

->Si el porte es >0 le coloca el importe.

 

Te dejo unos ejemplos con imágenes:

Ejemplo_1.png.9e415e7dbe88d00081b9f012e11ab094.png

Ejemplo_2.png.2226615f61ba3ead05dbfdf8452df0ac.png

Ejemplo_3.png.08ef00eea15e1702b81daade0d4c078f.png

 

 

{if $customer.id > 0 && !empty($customer.addresses[$cart.id_address_delivery].country_iso)}
                    <div class="shipping">
                        <span class="name">{l s='Envío' d='Shop.Theme.Cart'} 
                            <img src="/img/rbs_product/banderas/{$customer.addresses[$cart.id_address_delivery].country_iso|lower}.png">   
                        </span>
                        <span class="value">
                            {if $cart.subtotals.shipping.amount == 0}
                                {if $customer.addresses[$cart.id_address_delivery].country_iso == 'ES' || $customer.addresses[$cart.id_address_delivery].country_iso == 'PT'}
                                    {$cart.subtotals.shipping.value}
                                {else}
                                    {l s='Consultar precio' d='Shop.Theme.Cart'} 
                                {/if}
                            {else}
                                {$cart.subtotals.shipping.value}
                            {/if}
                        </span>
                    </div> 
                {else}
                    <div class="shipping">
                    </div>
                {/if}

 

 

Por otro lado el de CSS es añadir a tu archivo theme.css

 

#ID_DEL_CARRITO_AJAX .shipping {visibility: hidden;}

 

Espero que te sirva. Saludos

 

Un saludo.

 

Link to comment
Share on other sites

Yo no lo haría, la gente quiere saber cuánto le va a costar y si no ve nada, se creerá que es gratis, y luego de repente aparece X€ , me parecería engañoso y sospecharía de la web.

Si pones un "por determinar" entonces si, así entiendo que debo rellenar algún dato para saberlo.

Link to comment
Share on other sites

On 2/25/2022 at 8:30 PM, gusman126 said:

Yo no lo haría, la gente quiere saber cuánto le va a costar y si no ve nada, se creerá que es gratis, y luego de repente aparece X€ , me parecería engañoso y sospecharía de la web.

Si pones un "por determinar" entonces si, así entiendo que debo rellenar algún dato para saberlo.

Hola Gusman126, como pones "a determinar" en el carrito???

Link to comment
Share on other sites

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...