catalog/index.php

Listado de productos

Listado de productos

Este template es la vista por defecto para listar productos en una tienda

Objetos disponibles

Descripción

$_category

Categoría activa.

$_product

Productos.

$_total

Cantidad de productos.

$_subcategories

Subcategorías.

$_totalSubcategories

Cantidad de subcategorías.

$_paginator

Paginador.

$_category

Categorías destacadas.

$_campaign

Campañas asociadas a la categorías.

$_totalCampaigns

Cantidad de campañas.

$_manufacturers

Array de fabricantes presentes en la categoría.

$_manufacturerId

Filtro: id de fabricante.

$_manufacturerIds

Filtro: id de fabricantes (array).

$_manufacturerGroup

Filtro: grupo de fabricantes.

$_minPrice

Precio mínimo en la categoría.

$_maxPrice

Precio máximo en la categoría.

$_selectedMinPrice

Filtro: precio mínimo seleccionado.

$_selectedMaxPrice

Filtro: precio máximo seleccionado.

$_sale

Filtro: productos en oferta.

$_filters

Array de filtros de categoría disponibles.

$_appliedFilters

Filtro: array de filtros aplicados.

$_appliedAttributeFilters

Filtro: array de filtros de atributos aplicados.

$_featuresFilters

Array de filtros de características disponibles.

$_appliedFeaturesFilters

Filtro: array de filtros de características aplicados.

$_warehousesFilters

Array de filtros de bodegas.

$_appliedWarehousesFilters

Filtro: array de filtros de bodegas aplicados.

$_sort

Criterio de ordenamiento.

Código de ejemplo

// listado simple
<?=$_category->breadcrumb()?>
<h1><?=$_category->get('name')?></h1>

<ul class="listing clearfix">
	<?php
		while($_product->getNext())
			require __DIR__.'/../inc/product.php';
	?>
</ul>

<?php require_once __DIR__.'/pagination.php'; ?>

Código de ejemplo para filtros

<aside>
	
	<div class="sort">
		<h2>Ordenar</h2>
		<ul>
			<li><a href="<?=$_category->getURL()?>?sort=price asc" <?=($_sort == 'price asc' ? 'class="selected"' : '')?>>Precio más bajo</a></li>
			<li><a href="<?=$_category->getURL()?>?sort=price desc" <?=($_sort == 'price desc' ? 'class="selected"' : '')?>>Precio más alto</a></li>
			<li><a href="<?=$_category->getURL()?>?sort=new" <?=($_sort == 'new' ? 'class="selected"' : '')?>>Productos más nuevos</a></li>
			<li><a href="<?=$_category->getURL()?>?sort=discount" <?=($_sort == 'discount' ? 'class="selected"' : '')?>>Mayor descuento</a></li>
		</ul>							
	</div>

	<h1><?=$_category->get('name')?></h1>

	<ul>
		<?php while($_subcategories->getNext()): ?>
		<li>
			<a href="<?=$_subcategories->getURL()?>">
				<?=$_subcategories->get('name')?>	
			</a>
		</li>
		<?php endwhile; ?>
	</ul>
	
	<?php foreach($_attributeFilters as $id => $data): ?>
	<h2><?=$data['name']?></h2>
	
	<ul class="filters">
		<?php foreach($data['values'] as $value): ?>
		<li><a href="<?=Attribute::filterLink($id, $value)?>" class="<?=(isset($_appliedAttributeFilters[$id]) && array_search($value, $_appliedAttributeFilters[$id]) !== false ? 'active' : '')?>"><?=$value?></a></li>
		<?php endforeach; ?>
	</ul>
	<?php endforeach; ?>
					
	<?php foreach($_featuresFilters as $id => $data): ?>
	<h2><?=$data['name']?></h2>
	
	<ul class="filters">
		<?php foreach($data['values'] as $value): ?>
		<li><a href="<?=Feature::filterLink($id, $value)?>" class="<?=(isset($_appliedFeaturesFilters[$id]) && array_search($value, $_appliedFeaturesFilters[$id]) !== false ? 'active' : '')?>"><?=$value?></a></li>
		<?php endforeach; ?>
	</ul>
	<?php endforeach; ?>
					
	<?php if(count($_manufacturers)): ?>
	<h2>Marcas</h2>
	<ul class="filters">
		<?php foreach($_manufacturers as $i => $m): ?>
		<li><a href="<?=Manufacturer::filterLink($m['object']->get('id'))?>" <?=(in_array($m['object']->get('id'), $_manufacturerIds) ? 'class="active"': '')?>><?=$m['object']->get('name')?></a></li>
		<?php endforeach; ?>
	</ul>
	<?php endif; ?>

</aside>

Last updated

Was this helpful?