Files

29 lines
691 B
PHP

<?php
declare(strict_types=1);
namespace KbMarkdownImporter\Frontend;
final class TemplateLoader
{
public function render(string $template, array $vars = []): void
{
$path = KB_MARKDOWN_IMPORTER_DIR . 'templates/' . $template . '.php';
if (! is_readable($path)) {
status_header(500);
echo esc_html__('Dokumentationsvorlage fehlt.', 'kb-markdown-importer');
return;
}
extract($vars, EXTR_SKIP);
include $path;
}
public function capture(string $template, array $vars = []): string
{
ob_start();
$this->render($template, $vars);
return (string) ob_get_clean();
}
}