📊 Variables Smarty globales en PrestaShop
Actualizado: 2024-12-01
PrestaShop asigna automaticamente un conjunto de variables globales a todas las paginas del front office. Estas variables estan disponibles en cualquier template .tpl sin necesidad de asignarlas manualmente. Adicionalmente, cada controlador asigna variables especificas de la pagina.
#$cart — Carrito
Variables del carrito
smarty
{* Numero de productos en el carrito *}
{$cart.products_count}
{* Total del carrito *}
{$cart.totals.total.amount} {* Numerico *}
{$cart.totals.total.value} {* Formateado con simbolo de moneda *}
{* Subtotales *}
{$cart.totals.total_excluding_tax.value}
{$cart.totals.total_including_tax.value}
{$cart.totals.total_shipping.value}
{$cart.totals.total_discounts.value}
{* Lista de productos *}
{foreach $cart.products as $cartProduct}
{$cartProduct.name}
{$cartProduct.quantity}
{$cartProduct.price} {* Precio formateado *}
{$cartProduct.id_product}
{$cartProduct.id_product_attribute}
{$cartProduct.cover.bySize.cart_default.url} {* Imagen *}
{/foreach}
#$currency — Moneda
Variables de la moneda activa
smarty
{$currency.id} {* ID de la moneda *}
{$currency.name} {* Nombre: 'Euro' *}
{$currency.iso_code} {* Codigo ISO: 'EUR' *}
{$currency.sign} {* Simbolo: '€' *}
{$currency.conversion_rate} {* Tasa de conversion *}
{$currency.format} {* Formato: '2' *}
{$currency.decimals} {* Decimales *}
#$customer — Cliente
Variables del cliente logueado
smarty
{* Ver si el cliente esta logueado *}
{if $customer.is_logged}
Bienvenido, {$customer.firstname} {$customer.lastname}
{else}
<a href="{url entity='authentication'}">Iniciar sesion</a>
{/if}
{* Datos del cliente *}
{$customer.id} {* ID *}
{$customer.email} {* Email *}
{$customer.firstname} {* Nombre *}
{$customer.lastname} {* Apellido *}
{$customer.birthday} {* Fecha de nacimiento *}
{$customer.newsletter} {* Suscrito al boletin *}
{$customer.is_guest} {* Es invitado *}
{$customer.groups} {* Array de grupos *}
#$language — Idioma
Variables del idioma activo
smarty
{$language.id} {* ID del idioma *}
{$language.name} {* Nombre: 'Espanol' *}
{$language.iso_code} {* Codigo: 'es' *}
{$language.locale} {* Locale: 'es-ES' *}
{$language.language_code} {* Para el atributo lang HTML *}
{$language.is_rtl} {* ¿Es RTL (arabe, hebreo)? *}
#$shop — Tienda
Variables de la tienda
smarty
{$shop.name} {* Nombre de la tienda *}
{$shop.email} {* Email de contacto *}
{$shop.logo} {* URL del logo *}
{$shop.favicon} {* URL del favicon *}
{$shop.address.address1} {* Calle *}
{$shop.address.city} {* Ciudad *}
{$shop.address.country} {* Pais *}
{$shop.phone} {* Telefono *}
#$page — Pagina actual
Metadatos de la pagina actual
smarty
{$page.page_name} {* Nombre interno: 'product', 'category', 'index' *}
{$page.title} {* Titulo SEO de la pagina *}
{$page.meta.description} {* Meta description *}
{$page.meta.keywords} {* Meta keywords *}
{$page.meta.robots} {* Directivas robots *}
{$page.canonical} {* URL canonical *}
{* Detectar tipo de pagina *}
{if $page.page_name == 'product'}
{* Estamos en una ficha de producto *}
{/if}
#$urls — URLs del sistema
URLs globales del sistema
smarty
{$urls.base_url} {* URL base de la tienda *}
{$urls.current_url} {* URL de la pagina actual *}
{$urls.shop_domain_url} {* Dominio con protocolo *}
{* URLs de directorios *}
{$urls.img_ps_url} {* /img/ de PrestaShop *}
{$urls.img_cat_url} {* /img/c/ categorias *}
{$urls.img_prod_url} {* /img/p/ productos *}
{$urls.img_manu_url} {* /img/m/ marcas *}
{$urls.img_sup_url} {* /img/su/ proveedores *}
{$urls.theme_assets} {* /themes/mytheme/assets/ *}
{* Paginas del sistema *}
{$urls.pages.cart} {* URL del carrito *}
{$urls.pages.order} {* URL de pedidos *}
{$urls.pages.my_account} {* URL de mi cuenta *}
{$urls.pages.authentication} {* URL de login *}
{$urls.pages.contact} {* URL de contacto *}
{$urls.pages.sitemap} {* URL del sitemap *}
#$configuration — Configuracion
Acceso a la configuracion de PrestaShop
smarty
{* Configuraciones disponibles en templates *}
{$configuration.display_taxes_label}
{$configuration.taxes_enabled}
{$configuration.low_quantity_threshold}
{$configuration.is_b2b_enabled}
{$configuration.quick_view}
{$configuration.new_products_nb}
{$configuration.comparison_enabled}
#Variables especificas por pagina
| Pagina | Template | Variables clave |
|---|---|---|
| Producto | catalog/product.tpl | $product, $product_cover, $product_images, $accessories, $product_features |
| Categoria | catalog/category.tpl | $category, $listing, $products, $facets, $sort_orders |
| Carrito | checkout/cart.tpl | $cart, $hook_shopping_cart, $vouchers |
| Checkout | checkout/checkout.tpl | $checkout_process, $steps, $delivery_options |
| Confirmacion | checkout/order-confirmation.tpl | $order, $order_details, $products, $customer |
| Mi cuenta | customer/my-account.tpl | $customer, $orders, $vouchers, $addresses |
| Busqueda | catalog/search.tpl | $listing, $search_string, $products, $facets |
| CMS | cms/page.tpl | $cms, $breadcrumb |
| Homepage | index.tpl | $hook_home, $hook_home_tab, $hook_left_column |
Descargar en Markdown
Pensado para pegar en ChatGPT, Claude u otra IA. Incluye solo el contenido de esta pagina.