2012-01-11 4 views
2

私はMage_Core_Block_Templateのカスタムブロックを継承しました。私はブロックを次のコンストラクタでキャッシュしました:Magento:多くのブロックがキャッシュされる方法

protected function _construct() 
    { 
     $this->addData(array(
     'cache_lifetime' => 120, 
     'cache_tags'  => array(Mage_Core_Model_Store::CACHE_TAG, Mage_Cms_Model_Block::CACHE_TAG), 
       )); 
    } 

私はこのブロックがキャッシュされていることを確認します。 Magentoにキャッシュされたブロックをすべて一覧表示する方法。キャッシュされたブロックに、すべてのレイアウトを見ることが

var_dump($this->getLayout()->getUpdate()->getHandles());exit; 

: は、私は同様の指示をします。 thx。

+1

私は、Mage管理者の詳細なキャッシュ情報インターフェースを見たいと思っています。 – Nick

答えて

3

あなたはあなたのブロックのためのcache_keyを指定することができます。

protected function _construct() 
{ 
    $this->addData(array(
     'cache_key' => 'some_static_or_dynamic_key', // can be static or dynamic 
     'cache_lifetime' => 120, 
     'cache_tags'  => array(
      Mage_Core_Model_Store::CACHE_TAG, 
      Mage_Cms_Model_Block::CACHE_TAG), 
     ) 
    ); 
} 

をそして、あなたはそのブロックを呼び出すことにより、キャッシュされていることを確認することができます:ここで

Mage::app()->loadCache('your_cache_key'); 

blocks caching程度の良い品です。

+0

私はvar_dumpを試します(Mage :: app() - > loadCache( 'footer_locale')); exit;これが偽を返します – davidselo

+0

このブロックのテンプレートを修正しようとするとどうなりますか?フロントエンドで変更が見えますか? –

+0

ブロックはキャッシュされていますが、Magentoキャッシュの動作の理解のためにのみキャッシュされたMagentoブロックのリストを表示したい – davidselo

0

Magentoがキャッシュを作成したかどうかを確認するには、varフォルダ内のタグに名前が含まれているファイルを検索します。また、キャッシュが有効になっていることを確認してください。

関連する問題