Doctrineでは次のようにして検索結果をキャッシュしておくことができます。商品数やカテゴリー数が多い場合は一気にページが高速化するサイトもありますので場合によってはたいへん有用です。

EC-CUBEのデフォルトでもコード内で何箇所か使用されており、$lifetimeがキャッシュの有効時間です。

この$lifetimeは設定ファイルによってデフォルトで3600秒 = 1時間と指定されています。src/Eccube/Resource/config/doctrine_cache.yml.distをご確認ください。

この秒数を変更するにはapp/config/eccube内にdoctrine_cache.ymlというファイルを作成し、新しい設定を記載するのが良いでしょう。

例えば下記のようになります。lifetime: 86400と書くことでキャッシュの持続時間を1日に変更しています。

 

もちろん、場合によっては設定ファイルでなくコードに直接持続時間を書いても問題ありません。

あまり変更することがないような情報に対してはキャッシュしておくこととサイトの高速化に役立ちます。