PHP класс для хлебных крошек

Статический класс для формирования и вывода хлебных крошек с разметкой Shema.org.

<?php
class Breadcrumb
{
	private static $_items = array();

	public static function add($url, $name)
	{
		self::$_items[] = array($url, $name);
	}

	public static function out()
	{
		$res = '<div class="breadcrumb" itemscope="" itemtype="http://schema.org/BreadcrumbList" id="breadcrumbs">
			<span itemscope="" itemprop="itemListElement" itemtype="http://schema.org/ListItem">
				<a href="/" itemprop="item">
					Главная
					<meta itemprop="name" content="Главная">
				</a>
				<meta itemprop="position" content="1">
			</span>';

		$i = 1;
		foreach (self::$_items as $row) {
			$res .= '<span class="breadcrumb_item" itemscope="" itemprop="itemListElement" itemtype="http://schema.org/ListItem">
				<a href="' . $row[0] . '" itemprop="item">
					' . $row[1] . '
					<meta itemprop="name" content="' . $row[1] . '">
				</a>
				<meta itemprop="position" content="' . ++$i . '">
			</span>';
		}
		$res .= '</div>';

		return $res;
	}
}
PHP

Использование

Breadcrumb::add('/category/', 'Категория');
Breadcrumb::add('/category/article', 'Статья');
echo Breadcrumb::out();
PHP

Немного CSS стилей

.breadcrumb {
	padding: 0;
	margin: 20px;    
}
.breadcrumb a {
	display: inline-block;
	font-size: 15px;
	vertical-align: top;
}
.breadcrumb_item:before {
content: '';
	display: inline-block;
	width: 5px;
	height: 5px;
	margin: 7px 4px;
	vertical-align: top;
	background: #666;
	border-radius: 50%;
} 
CSS

Результат

26.09.2019 94

Поделится

Другие публикации

В статье представлены различные PHP расширения для чтения файлов XLS, XLSX. Описаны их плюсы и минусы, а также примеры...
25.03.2018 8970
Определить телефон или планшет можно с помощью библиотеки PHP Mobile Detect. Это легкий класс использующий строку...
27.09.2018 1511
Для предотвращения XSS, SQL-инъекций и других атак, данные полученные из форм нужно чистить. Простое экранирования...
16.08.2019 201
Сборник рекомендаций по настройке сайта помогающий исключить проблемы при индексировании поисковыми системами.
08.12.2016 1482
С помощью расширения dompdf можно легко сформировать PDF файл. По сути, dompdf - это конвертер HTML в PDF который...
16.02.2018 9607
Класс ZipArchive позволяет быстро и удобно работать с ZIP-архивам, рассмотрим основные возможности класса.
09.07.2019 412