本文整理汇总了PHP中Mage_Catalog_Block_Product_Abstract::getRequest方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Catalog_Block_Product_Abstract::getRequest方法的具体用法?PHP Mage_Catalog_Block_Product_Abstract::getRequest怎么用?PHP Mage_Catalog_Block_Product_Abstract::getRequest使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Catalog_Block_Product_Abstract
的用法示例。
在下文中一共展示了Mage_Catalog_Block_Product_Abstract::getRequest方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: applyProductView
/**
* Product view block, don't cache if rendered with cart item update
*
* @param Mage_Catalog_Block_Product_View $block
*/
public function applyProductView(Mage_Catalog_Block_Product_Abstract $block)
{
// The "messages" block is session-dependent, don't cache
if (Mage::helper('cache')->responseHasMessages()) {
$block->setData('cache_lifetime', null);
return;
}
// Cart stuff is session-dependent
$request = $block->getRequest();
if ($request->getModuleName() == 'checkout' && $request->getControllerName() == 'cart' && $request->getActionName() == 'configure' && $request->getParam('id')) {
$block->setData('cache_lifetime', null);
return;
}
// Set cache keys
$keys = $block->getCacheKeys();
$customer = Mage::getSingleton('customer/session')->getCustomer();
$keys = array_merge($keys, array($customer->getGroupId()));
$product = $block->getProduct();
if ($product) {
$tags = array(Mage_Catalog_Model_Product::CACHE_TAG . '_' . $block->getProduct()->getId());
$taxCalculator = Mage::getModel('tax/calculation');
$product = $block->getProduct();
$keys = array_merge($keys, array($product->getId(), $taxCalculator->getRate($taxCalculator->getRateRequest()->setProductClassId($product->getTaxClassId()))));
} else {
$tags = array(Mage_Catalog_Model_Product::CACHE_TAG);
}
$block->setData('cache_tags', $tags);
$block->setData('cache_keys', $keys);
}