php - Magento-Cómo obtener el total de los artículos del carrito en header.phtml
xhtml cart (7)
Estoy utilizando Magento eCommerce y he modificado mi header.phtml a través de la plantilla en blanco. Código, este es mi código pero se muestra en blanco.
<?php $cartQty = $this->getSummaryCount() ?>
<?php if ($cartQty>0): ?>
<?php if ($cartQty==1): ?>
<?php echo $this->__(''<a class="cartgo" href="%s">(1 ITEM)</a>'', $this->getUrl(''checkout/cart'')) ?>
<?php else: ?>
<?php echo $this->__(''<a class="cartgo" href="%s">(%s ITEMS)</a>'', $this->getUrl(''checkout/cart'')) ?>
<?php endif ?>
<?php endif ?>
Al enlazar con un carrito, realmente debería usar Mage::helper(''checkout/cart'')->getCartUrl()
. El ejemplo dado no funcionaría si su sitio está alojado en un subdominio.
Antes había una respuesta a un enlace de alguien llamado SUHUR. Creo que iba a recompensarlo con la respuesta, ¿pero parece que eliminó su propia publicación?
Se vinculó a esto: http://nothingtopost.wordpress.com/tag/how-to-get-total-cart-item-in-magento/
He modificado mi código y esto funciona ahora en archivos .phtml.
<?php
$count = $this->helper(''checkout/cart'')->getSummaryCount(); //get total items in cart
$total = $this->helper(''checkout/cart'')->getQuote()->getGrandTotal(); //get total price
if($count==0)
{
echo $this->__(''<a href="/checkout/cart" class="cartgo">(0 ITEMS)</a>'',$count);
}
if($count==1)
{
echo $this->__(''<a href="/checkout/cart" class="cartgo">(1 ITEM)</a>'',$count);
}
if($count>1)
{
echo $this->__(''<a href="/checkout/cart" class="cartgo">(%s ITMES)</a>'',$count);
}
echo $this->__('''', $this->helper(''core'')->formatPrice($total, false));
?>
Puedes encontrar la plantilla de tu carrito aquí:
YOURSITE/app/design/frontend/YOURTHEME/default/template/checkout/cart/minicart.phtml
Dentro de un lapso con la clase de .count
verá este fragmento de código:
<span class="count"><?php echo $_cartQty; ?></span>
Reemplácelo con este fragmento de código y obtendrá el total general en su lugar:
<?php echo $this->helper(''checkout'')->formatPrice(Mage::getSingleton(''checkout/cart'')->getQuote()->getGrandTotal()); ?>
Utilice el objeto auxiliar para obtener el objeto de carrito actual y luego cuente la cantidad de elementos en el objeto de carrito.
echo Mage::helper(''checkout/cart'')->getCart()->getItemsCount();
Más de http://www.douglasradburn.co.uk/how-to-get-number-of-cart-items-in-magento/
<?php $_cartQty = Mage::getSingleton(''checkout/cart'')->getItemsCount(); echo $_cartQty; ?>
eso es todo lo que necesita para 1.7 si ya está ejecutando el mago: aplicación con la que no puede hacer nada sin realmente.
además, esto solo muestra el número de "artículos", no la cantidad.
<?php
$count = $this->helper(''checkout/cart'')->getSummaryCount(); //get total items in cart
$total = $this->helper(''checkout/cart'')->getQuote()->getGrandTotal(); //get total price
if($count==0)
{
echo $this->__(''<a href="/checkout/cart" class="cartgo">(0 ITEMS)</a>'',$count);
}
if($count==1)
{
echo $this->__(''<a href="/checkout/cart" class="cartgo">(1 ITEM)</a>'',$count);
}
if($count>1)
{
echo $this->__(''<a href="/checkout/cart" class="cartgo">(%s ITMES)</a>'',$count);
}
echo $this->__('''', $this->helper(''core'')->formatPrice($total, false));
?>
esto funciona para mi gracias ...
<?php
$cartTotal = $this->helper(''checkout/cart'')->getQuote()->getGrandTotal();
$cartItemsCount = Mage::helper(''checkout/cart'')->getCart()->getItemsCount();
$cartSuffix = ($cartItemsCount != 1) ? ''s'' : '''';
echo ''<a class="cartgo" href="''.$this->getUrl(''checkout/cart'').''">
<strong>''.$this->__(''Your basket'').''</strong><br />''.
$this->__(''(%s) Item%s'', $cartItemsCount, $cartSuffix).
''<span>[$''.$this->helper(''core'')->formatPrice($cartTotal, false).'']</span>
</a>'';
?>
Salida:
Tu canasta
3 Artículos [$ 32.5]