2012-01-31 138 views
1

我已經看到了關於如何在Magentocommerce.com上緩存塊輸出的wiki頁面,並閱讀了關於如何去做的一篇文章。但是,我想緩存未捆綁到產品中的模塊的輸出。Magento:我如何緩存模塊輸出?

我的模塊所做的是加載屬性中的顏色條目,對它們進行一些數學運算,以便通過tint/hue/brightness等進行排序,然後輸出顏色選擇器(可用於產品頁面)。

我有其他模塊,也可以受益於緩存控制,這些都不是特別綁定到產品。因此,在教程,那裏是這樣的:

'cache_tags'     => array(Mage_Catalog_Model_Product::CACHE_TAG), 'cache_key'      => $this->getProduct()->getId()

做我的東西在任何舊號碼?

http://inchoo.net/ecommerce/magento/magento-block-caching/

http://www.magentocommerce.com/wiki/5_-_modules_and_development/block_cache_and_html_ouput

回答

2

您應該使用自定義緩存標籤和關鍵

'cache_tags'  => array(Yourpackage_Yourmodule_Model_Yourmodel::CACHE_TAG) 
'cache_key'  => '<your cache key here>' 

如果我給你的權利,你的塊輸出始終是相同的,這就是爲什麼你可以使用屬性代碼作爲緩存標籤和屬性ID作爲關鍵字(例如)。

+0

謝謝。我讓我的內存緩存輸出單獨密鑰,一切似乎都很好: > 30 END <30 GET alphanumericPINKXYLOPHONES > 30發送鍵alphanumericPINKXYLOPHONES > 30 END 我不得不把新的「構造」聲明「塊'輸出緩存,我也必須在'模型'中放入預定義的'CACHE_TAG'常量。我不認爲'緩存鍵'真的需要,但它是緩存! – 2012-01-31 13:05:04