Mostrando% di sconto a pagina raccolta del prodotto
-
16-10-2019 - |
Domanda
Sto cercando di visualizzare sconto età% a pagina raccolta del prodotto, a seguito di questi tutorial: http://www.pauldonnelly.net/magento-display- vendita-icon-se-speciale-prezzo / http: // shamimcse05. wordpress.com/2010/12/23/get-special-price-or-regular-price-in-magento/
ho dichiarato questi nel codice qui sopra:
$_productCollection=$this->getLoadedProductCollection();
$_helper = $this->helper('catalog/output');
Poi ho usato questo ciclo per ottenere tutti i prodotti:
<?php foreach ($_productCollection as $_product): ?>
In questo ciclo, sto cercando di aggiungere queste righe, ho provato a seguito del già menzionato tutorial così com'è, ma a partire dà errori, così ho mista, li fino a sbarazzarsi di errori, ed è qui ciò che il codice è diventato:
<?php $specialprice = Mage::getModel('catalog/product')->load($_product->getId())->getSpecialPrice();
$thisProduct= Mage::getModel('catalog/product')->load(product_id);
$regularprice = $thisProduct->getPrice();
// Get the Special Price FROM date
$specialPriceFromDate = $thisProduct->getSpecialFromDate();
// Get the Special Price TO date
$specialPriceToDate = $thisProduct->getSpecialToDate();
// Get Current date
$today = time();
if ($specialprice):
if($today >= strtotime( $specialPriceFromDate) && $today = strtotime( $specialPriceFromDate) && is_null($specialPriceToDate)):
$discount = (($regularprice-$specialprice)/$regularprice)*100 ;
endif;
endif; ?>
Sto usando il codice seguente per l'uscita di controllo:
echo "Discount is: ".$discount = (($regularprice-$specialprice)/$regularprice)*100 ."% OFF" ;
echo "</br>Special Price is: ".$specialprice;
echo "</br>Regular Price is: ".$regularprice;
echo "</br>Special Price from date is: ".$specialPriceFromDate;
e questo è l'output sulla pagina per i prodotti, che sono stati assegnati prezzo speciale, con date di inizio e fine validi:
Discount is: 0% OFF
Special Price is: 500.0000
Regular Price is:
Special Price from date is:
E 'sempre i valori di prezzo speciale, ma non sta leggendo il valore del prezzo regolare, 'Da dati' e 'A Data'.
Si prega di aiutarmi a risolvere questo problema.
Soluzione
Questo dovrebbe funzionare per voi:
$myproductobject = Mage::getModel('catalog/product')->load($_product->getId());
$specialprice = $myproductobject->getSpecialPrice();
$regularprice = $myproductobject->getPrice();
$specialPriceFromDate = $myproductobject->getSpecialFromDate();
$specialPriceToDate = $myproductobject->getSpecialToDate();
$today = time();
if ($specialprice):
if($today >= strtotime( $specialPriceFromDate) && $today <= strtotime($specialPriceToDate) || $today >= strtotime( $specialPriceFromDate) && is_null($specialPriceToDate)):
$discount = (($regularprice-$specialprice)/$regularprice)*100 ;
endif;
endif;