protected static function extractSnippetsFromMarkupCached($theme, $pageName, $markup)
{
if (array_key_exists($pageName, self::$pageSnippetMap)) {
return self::$pageSnippetMap[$pageName];
}
$key = self::getMapCacheKey($theme);
$map = null;
$cached = Cache::get($key, false);
if ($cached !== false && ($cached = @unserialize($cached)) !== false) {
if (array_key_exists($pageName, $cached)) {
$map = $cached[$pageName];
}
}
if (!is_array($map)) {
$map = self::extractSnippetsFromMarkup($markup, $theme);
if (!is_array($cached)) {
$cached = [];
}
$cached[$pageName] = $map;
Cache::put($key, serialize($cached), Config::get('cms.parsedPageCacheTTL', 10));
}
self::$pageSnippetMap[$pageName] = $map;
return $map;
}