metadata()->snippetData(); // if we're using slots, the user wants to output priority tags such as // before their stylesheet, script, etc. tags if (isset($slot)) { foreach (array_filter($tags, fn ($tag) => $tag['priority']) as $tag) { echo Html::tag($tag['tag'], $tag['content'] ?? null, $tag['attributes'] ?? []) . PHP_EOL; } echo $slot; $tags = array_filter($tags, fn ($tag) => !$tag['priority']); } // then output other tags as normal // this is unfiltered if slots is not set. foreach ($tags as $tag) { echo Html::tag($tag['tag'], $tag['content'] ?? null, $tag['attributes'] ?? []) . PHP_EOL; }