public function onPageInitialized() { if (property_exists($this->grav['page']->header(), 'imports')) { $imports = $this->grav['page']->header()->imports; $parsed = []; if (is_array($imports)) { foreach ($imports as $import) { $import = static::sanitize($import); $key = ltrim($import, 'data:'); if (Utils::endswith($import, '.yaml')) { $key = rtrim($key, '.yaml'); $parsed[$key] = Yaml::parse($this->getContents($import)); } elseif (Utils::endswith($import, '.json')) { $key = rtrim($key, '.json'); $parsed[$key] = json_decode($this->getContents($import)); } } } else { $import = static::sanitize($import); if (Utils::endswith($import, '.yaml')) { $parsed = Yaml::parse($this->getContents($import)); } elseif (Utils::endswith($import, '.json')) { $parsed = json_decode($this->getContents($import)); } } $this->grav['page']->header()->imports = $parsed; } }