Agregar un selector de fecha de entrega a tu carrito
Puedes incluir un calendario en tu página del carrito que permite a los clientes especificar una fecha de entrega para su pedido.
Incluye jQuery en tu theme.liquid
Para que esta personalización funcione, algunos temas requieren que se agregue una etiqueta de script para jQuery al archivo de diseño theme.liquid. Si usas Boundless, Debut versión 17.2.0 o posterior, Express, Narrative o Venture, es posible que deba realizar el paso siguiente:
En el directorio Diseño, haz clic en
theme.liquid
.Busca la etiqueta de cierre
</head>
en el código. En una nueva línea encima de la etiqueta de cierre</head>
, pega el siguiente código:
{{ '//ajax.googleapis.com/ajax/libs/jquery/2.2.3/jquery.min.js' | script_tag }}
- Haz clic en Guardar.
Crear un fragmento de fecha de entrega
Para crear un fragmento para tu selector de fecha de entrega:
Desde tu panel de control de Shopify, ve a Tienda online > Temas.
Busca el tema que deseas editar, haz clic en el botón ... para abrir el menú de acciones y luego haz clic en Editar código.
Desde la app de Shopify, toca Tienda.
En la sección Canales de ventas, selecciona Tienda online.
Toca Administrar temas.
Busca el tema que deseas editar, haz clic en el botón ... para abrir el menú de acciones y luego haz clic en Editar código.
Desde la app de Shopify, toca Tienda.
En la sección Canales de ventas, selecciona Tienda online.
Toca Administrar temas.
Busca el tema que deseas editar, haz clic en el botón ... para abrir el menú de acciones y luego haz clic en Editar código.
En el directorio Fragmentos, haz clic en Agregar un nuevo fragmento:
Crear el fragmento:
En tu nuevo fragmento
delivery-date.liquid
, pega el siguiente código:
{{ '//code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css' | stylesheet_tag }}
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js" defer="defer"></script>
<div style="width:300px; clear:both;">
<p>
<label for="date">Pick a delivery date:</label>
<input id="date" type="text" name="attributes[date]" value="{{ cart.attributes.date }}" />
<span style="display:block" class="instructions"> We do not deliver during the week-end.</span>
</p>
</div>
<script>
window.onload = function() {
if (window.jQuery) {
let $ = window.jQuery;
$(function() {
$("#date").datepicker({
minDate: +1,
maxDate: '+2M',
beforeShowDay: $.datepicker.noWeekends
});
});
}
}
</script>
- Haz clic en Guardar.
Incluir el fragmento en tu página del carrito
Para incluir el fragmento de fecha de entrega en tu página del carrito:
En el directorio Secciones, haz clic en
cart-template.liquid
. Si tu tema no tiene este archivo, haz clic encart.liquid
en el directorio Plantillas.Busca la etiqueta de cierre
</form>
en el código. En una nueva línea encima de la etiqueta de cierre</form>
, pega el siguiente código:
{% render 'delivery-date' %}
- Haz clic en Guardar.
Ya tienes un campo de entrada de fecha de entrega en tu página del carrito. Cuando hagas clic dentro del campo de texto, aparecerá un calendario:
El selector de fecha usado en esta personalización es un widget de la biblioteca de interfaz de usuario jQuery. Este artículo del blog explica cómo desactivar fechas específicas en el calendario del selector de fechas.