Pagekit\View\Helper\MetaHelper::render PHP Метод

render() публичный Метод

Renders the meta tags.
public render ( ) : string
Результат string
    public function render()
    {
        $output = '';
        foreach ($this->metas as $name => $value) {
            if (preg_match('/^link:?/i', $name)) {
                if (!isset($value['rel'])) {
                    $value['rel'] = substr($name, 5);
                }
                $attributes = '';
                foreach ($value as $attr => $val) {
                    $attributes .= sprintf(' %s="%s"', $attr, htmlspecialchars($val));
                }
                $output .= sprintf("        <link%s>\n", $attributes);
            } else {
                $value = htmlspecialchars($value);
                if ($name == 'title') {
                    $output .= sprintf("        <title>%s</title>\n", $value);
                } else {
                    if ($name == 'base') {
                        $output .= sprintf("        <base href=\"%s\">\n", $value);
                    } else {
                        if ($name == 'canonical') {
                            $output .= sprintf("        <link rel=\"%s\" href=\"%s\">\n", $name, $value);
                        } elseif (preg_match('/^(og|twitter|article):/i', $name)) {
                            $output .= sprintf("        <meta property=\"%s\" content=\"%s\">\n", $name, $value);
                        } else {
                            $output .= sprintf("        <meta name=\"%s\" content=\"%s\">\n", $name, $value);
                        }
                    }
                }
            }
        }
        return $output;
    }