2

I'm reviewing the code on a project that has the following defined in the main config.php as a boolean:

cache => true

Looking at the docs this doesn't seem to be referenced anywhere. Does the config option exist in Craft 2? I'm not seeing any documentation that states it does.

I know others like cacheMethod and cacheDuration do.

James White
  • 1,151
  • 6
  • 19

1 Answers1

1

I don't believe this is a valid configuration value. You will use the cache as a tag in your twig files:

{% cache %}
    {% for element in entry.hugeField %}
        {{ element.nestedAsset.first().url }}
    {% endfor %}
{% endcache %}

The cache is most effective at nested queries in matrix fields or asset fields or category fields. Do not use the cache for plain text fields or those that can be accessed in linear time.

I would just delete that line from your config.php

Clark Nelson
  • 679
  • 4
  • 13
  • This would seem to be the case. Caching in twig is used like this throughout but this config var seems attached to nothing. Strange because in this project it uses phpdotenv and a specific env var has been created for it. Will have to double check. Thanks. – James White May 08 '18 at 16:56
  • Good luck! AFAIK Craft doesn't have a "always-on" caching system, although a value such as that might be useful for disabling the cache globally. – Clark Nelson May 08 '18 at 16:59
  • So digging a bit deeper, it appears to be an additional customisation when using {% cache %}, example: {% cache globally using key 'someKey' if craft.config.cache %}. That's where its coming from! Mystery solved. Not standard Craft, but I guess like you said a way to toggle caching overall. – James White May 08 '18 at 17:42
  • @JamesWhite Correct, you can define arbitrary config keys and values that you can reference elsewhere (like in a template). Probably worth linking to https://craftcms.stackexchange.com/questions/13382/what-are-the-cache-options-available-to-a-craft-installation as well – Brad Bell May 08 '18 at 22:05