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

Комментарии

, чтобы добавить комментарий.

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

Генерация счета на оплату PDF PHP
С помощью расширения dompdf можно легко сформировать PDF файл. По сути, dompdf - это конвертер HTML в PDF который...
16.02.2018
19050
+8
Обзор расширений для чтения Excel файлов
В статье представлены различные PHP расширения для чтения файлов XLS, XLSX. Описаны их плюсы и минусы, а также примеры...
25.03.2018
18953
+2
Определение мобильного устройства
Определить телефон или планшет можно с помощью библиотеки PHP Mobile Detect. Это легкий класс использующий строку...
27.09.2018
4040
-2
Очистка данных из форм в PHP
Для предотвращения XSS, SQL-инъекций и других атак, данные полученные из форм нужно чистить. Простое экранирования кавычек не достаточно, нужен комплексный подход по типу данных.
16.08.2019
1486
+1
Рекомендации по SEO настройке сайта
Сборник рекомендаций по настройке сайта помогающий исключить проблемы при индексировании поисковыми системами.
08.12.2016
2980
0
Управление выводом ошибок PHP
PHP предлагает гибкие настройки вывода ошибок, среди которых функия error_reporting($level) – задает, какие ошибки PHP попадут в отчет.
10.10.2019
1967
0