Plantillas de diseño Bootic

Las plantillas HTML de cada página de tu tienda Bootic pueden ser editadas en el área de diseño de tu panel de administración.
Para esto, Bootic define una serie de plantillas presentes en todas las tiendas.
| plantilla | usada en URLs | |
|---|---|---|
| layout.html | Todas | es la plantilla HTML principal. Todas las otras páginas se despliegan aquí dentro. |
| home.html | / | es la página que ves cuando visitas la portada de tu tienda. |
| products.html | /products, /types/mp3s, /types/mp3s/tags/apple |
despliega todos los productos de tu tienda. |
| product.html | /product/ipod-nano |
es la ficha o detalle de cada producto. |
| collection.html | /collections/destacados, y colecciones filtradas por tipo o etiquetas |
detalle de una colección de productos. Aquí muestras la descripción de la colección y la lista de productos asociados a ella. |
| page.html | /pages/about-us |
detalle de cada página de contenido que hayas creado para tu tienda. |
| form.html | /forms/contacto |
contenido y campos de cada formulario de contacto de tu tienda. |
| cart.html | /cart |
muestra a tus clientes el contenido de sus carros de compra en tu tienda. |
| blog.html | /blog |
lista de artículos en el blog. |
| post.html | /blog/2011/01/13/hola-mundo |
detalle de un artículo del blog. |
Contenido dinámico
Cada una de estas plantillas recibe contenido dinámicamente de acuerdo a lo que estas mostrando en ella. Para esto, Bootic define una sintaxis especial que puedes usar en las plantillas HTML para insertar el contenido dinámico. La tecnología detras de estas variables se llama Liquid y puedes leer más en este link.
Por ejemplo, para generar una lista de productos en la plantilla products.html:
<ul id="products"> {% for product in products %} <li class="product"> <h3><a href="{{product.url}}">{{ product.model }}</a></h3> <span class="price">{{ product.price.format }}</span> </li> {% endfor %} </ul>
Esta sintaxis define tres tipos de operaciones: variables, filtros y etiquetas.
Variables
{{ product.url }}
Filtros
expresión | filtro. La barra vertical quiere decir "toma el valor de la expresión y pásalo a través del filtro".
Por ejemplo, el filtro asset_url agrega la URL completa del servidor de archivos. El ejemplo
'estilos.css' | asset_url... Genera la ruta absoluta a una imagen subida a través del editor de plantillas Bootic, como esta:
http://static.bootic.net/themes/110/estilos.cssEste link lista todos los filtros disponibles en Bootic y detalla sus formas de uso.
Etiquetas
{% for product in products limit:3 %}
<a href="{{product.url}}">{{ product.model }}</a>
{% endfor %}
El resultado es 3 links HTML, uno para cada producto.
Variables y etiquetas disponibles
Estas son algunas de las variables y etiquetas disponibles en cualquier plantilla Bootic.
| {{ template }} | Plantilla actual ("home", "products", "page", etc.) |
|---|---|
| {{ shop.name }} | Nombre de la tienda |
| {{ shop.description }} | descripción de la tienda, modificable en el panel de administración. |
| {{ shop.url }} | URL de la portada. |
| {% all_products %} | Objeto iterable que contiene todos los productos en la tienda Ver más |
| {% collections %} | Objeto iterable que contiene todas las colecciones en la tienda Ver más |
| {% pages %} | Objeto iterable que contiene todas las páginas en la tienda Ver más |
| {% forms %} | Objeto iterable que contiene todos los formularios en la tienda Ver más |
| {% menus %} | Objeto iterable que contiene todos los menús de navegación en la tienda Ver más |
| {% blog %} | Objeto iterable que contiene todos los artículos del blog de la tienda Ver más |
| {% tags %} | Objeto iterable que contiene todas las etiquetas en la tienda Ver más |
| {% product_types %} | Objeto iterable que contiene todos los tipos de productos en la tienda Ver más |
| {% vendors %} | Objeto iterable que contiene todas las marcas de productos en la tienda Ver más |
| {% resource %} | Alias que apunta al objeto principal en una plantilla. Puede ser collection, page, form, product, etc. Ver más |
Producto
Disponible en product.html o dentro de un loop de productos.
| {{ product.model }} | Modelo o título de un producto |
|---|---|
| {{ product.description }} | Descripción de un producto |
| {{ product.price }} | Precio de un producto, en centavos.{{ product.price.format }} para formatear. |
| {{ product.url }} | URL a la ficha de producto |
| {{ product.first_image }} | Primera imagen de un producto |
| {% for image in product.images %}...{% endfor %} | Iterar imagenes de un producto |
Página
Disponible en page.html o dentro de un loop de páginas.
| {{ page.title }} | |
|---|---|
| {{ page.body }} | |
| {{ page.url }} |
Colección
Disponible en collection.html o dentro de un loop de colecciones.
| {{ collection.title }} | |
|---|---|
| {{ collection.body }} | |
| {{ collection.url }} |
Formulario
Disponible en form.html o dentro de un loop de formularios.
| {{ form.title }} | |
|---|---|
| {{ form.body }} | |
| {{ form.url }} | |
| {% contact_form_field %} | Etiqueta especial que muestra los campos definidos para el formulario actual. |
Carro de compras
| {% add_to_cart %} | Página de producto (product.html). HTML para selector de variantes y botón "agregar al carro". |
|---|---|
| {% cart %} | Inserta el HTML necesario para el carro de compras con todos sus productos. |
