А вот как организовать кэш тут надо подумать.
Либо в один файл всё сразу лепить, либо для каждого директория отдельно.
Скорее всего лучше будет второе. Тогда вместо скана директория просто берем содержимое файла. Если файл отсутствует создаем его. Ну и в админке или где-либо еще ребилд всех кэшей запилить будет достаточно.