Skip to content

Instantly share code, notes, and snippets.

@HarveyD
Last active August 19, 2019 11:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save HarveyD/7964ac480fe7a6fbb0d85004d3959d39 to your computer and use it in GitHub Desktop.
Save HarveyD/7964ac480fe7a6fbb0d85004d3959d39 to your computer and use it in GitHub Desktop.
A snippet of a structured data breadcrumb made using TypeScript and React
export interface IBreadcrumb {
description: string;
url: string;
}
const StructuredBreadcrumb = ({
breadcrumbList
}: {
breadcrumbList: IBreadcrumb[];
}) => (
<ol
itemScope={true}
itemType="http://schema.org/BreadcrumbList"
className="breadcrumbs-container"
>
{breadcrumbList.map((breadcrumb: IBreadcrumb, i: number) => (
<li
key={i}
itemProp="itemListElement"
itemScope={true}
itemType="http://schema.org/ListItem"
>
<a
href={breadcrumb.url}
itemScope={true}
itemType="http://schema.org/Thing"
itemProp="item"
itemID={breadcrumb.url}
>
<span itemProp="name">{breadcrumb.description}</span>
</a>
<meta itemProp="position" content={i.toString()} />
</li>
))}
</ol>
);
export default StructuredBreadcrumb;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment