Source of file BreadcrumbListSchema.php
Size: 1,240 Bytes - Last Modified: 2021-12-24T06:34:02+00:00
/var/www/docs.ssmods.com/process/src/src/Type/BreadcrumbListSchema.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | <?php /** * BreadcrumbListSchema.php * * @author Bram de Leeuw * Date: 03/11/16 */ namespace Broarm\Schema\Type; use SilverStripe\ORM\ArrayList; /** * Class BreadcrumbListSchema * @package Broarm\Schema\Type * * @property array itemListElement; */ class BreadcrumbListSchema extends SchemaType { /** * BreadcrumbListSchema constructor. * * @param ArrayList|null $breadcrumbs */ public function __construct(ArrayList $breadcrumbs = null) { $this->{'@context'} = 'http://schema.org'; $this->{'@type'} = 'BreadcrumbList'; $this->itemListElement = array(); if (isset($breadcrumbs)) { $this->makeItemListElement($breadcrumbs); } } /** * Construct the breadcrumb list * * @param ArrayList $breadcrumbs */ private function makeItemListElement(ArrayList $breadcrumbs) { foreach ($breadcrumbs as $crumb) { $listItem = new ListItemSchema( $crumb->getPageLevel(), new ThingSchema( $crumb->AbsoluteLink(), $crumb->Title ) ); array_push($this->itemListElement, $listItem); } } } |