brotkrueml/sdbreadcrumb

此包已被弃用且不再维护。作者建议使用 brotkrueml/schema 包。

渲染面包屑结构数据的视图助手

安装: 716

依赖项: 0

建议者: 0

安全性: 0

星标: 3

关注者: 1

分支: 1

开放问题: 0

类型:typo3-cms-extension

v1.3.0 2022-09-24 08:20 UTC

This package is auto-updated.

Last update: 2022-09-24 08:27:51 UTC


README

这是一个用于渲染面包屑结构数据的TYPO3 Fluid视图助手扩展。

此TYPO3扩展已过时。请使用 EXT:schema 代替。它提供了一个具有相同功能的面包屑视图助手。

迁移到schema扩展

使用 schema扩展,您不仅可以有结构化的面包屑,还可以获得API和许多其他视图助手,例如添加组织、人员、视频、职位发布等更多类型到您的网站中。

迁移很简单。只需在您的Fluid模板中将以下内容替换为:

<sdb:breadcrumbMarkup breadcrumb="{breadcrumb}"/>

替换为

<schema:breadcrumb breadcrumb="{breadcrumb}"/>

即可。

要求

扩展支持TYPO3 v8 LTS、TYPO3 v9 LTS、TYPO3 v10 LTS和TYPO3 v11 LTS。

为什么你应该使用这个扩展?

结构化数据丰富了您的内容,以供搜索引擎使用。面包屑显示网站层次结构和分类,而与页面树无关。使用此视图助手,您可以按照 schema.org 渲染 breadcrumb列表

您可以在 Google功能指南 中找到有关结构化面包屑标记的优点和示例的更多信息。

如果您想在页面上不仅仅包含结构化标记的面包屑,请使用 schema扩展。使用它,您可以使用API或视图助手以结构化方式输出任何内容。您还可以轻松迁移到schema扩展。请参见下文。

安装

通过Composer安装

安装此扩展的推荐方法是使用Composer。在基于Composer的TYPO3项目根目录下,只需执行以下操作:

composer require brotkrueml/sdbreadcrumb

从TYPO3扩展存储库(TER)作为扩展安装

使用扩展管理模块下载并安装扩展。

用法

视图助手可以使用以下语法在您的Fluid模板中使用:

<sdb:breadcrumbMarkup breadcrumb="{breadcrumb}"/>

只需将您的TypoScript页面对象中特殊属性rootline的菜单处理器结果抛给视图助手,例如:

page.10 = FLUIDTEMPLATE
page.10 {
    // ... Your other configuration

    dataProcessing {
        10 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
        10 {
            special = rootline
            as = breadcrumb
        }
    }
}

默认情况下,第一条记录(起始页面)会被移除,因此它不会在结构化数据中显示(这通常不是必需的)。您可以通过附加参数`stripFirstItem`来改变这种行为。

<sdb:breadcrumbMarkup breadcrumb="{breadcrumb}" stripFirstItem="0" />

由于根行菜单处理器的结果是数组的数组,您可以使用自己生成的结构,例如用于分类。

$myBreadcrumb = [
    [
        'link' => '/',
        'title' => 'Start page',
    ],
    [
        'link' => '/category-1/',
        'title' => 'Category 1',
    ],
    [
        'link' => '/subcategory-1-1/',
        'title' => 'Subcategory 1-1',
    ],
];

结果将以紧凑的JSON-LD格式呈现。

<script type="application/ld+json">
{
    "@context": "http://schema.org",
    "@type": "BreadcrumbList",
    "itemListElement": [
        {
            "@type": "ListItem",
            "position": 1,
            "item": {
                "@type": "WebPage",
                "@id": "https://example.org/category-1/",
                "name": "Category 1"
            }
        },
        {
            "@type": "ListItem",
            "position": 2,
            "item": {
                "@type": "WebPage",
                "@id": "https://example.org/subcategory-1-1/",
                "name": "Subcategory 1-1"
            }
        }
    ]
}
</script>

您可以在结构化数据测试工具中测试生成的结构化数据。

在模板中使用XML Schema (XSD) 进行验证

您可以协助代码编辑器建议标签名称和可能的属性。只需将sdb命名空间添加到Fluid模板的根部。

<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" xmlns:sdb="http://typo3.org/ns/Brotkrueml/Sdbreadcrumb/ViewHelpers" sdb:schemaLocation="https://brot.krue.ml/schemas/sdbreadcrumb-1.0.0.xsd" data-namespace-typo3-fluid="true">

相关部分是命名空间声明(xmlns:sdb="http://typo3.org/ns/Brotkrueml/Sdbreadcrumb/ViewHelpers")。sdb:schemaLocation属性的内容指向最新的XSD定义。

您还可以将XSD文件导入您喜欢的IDE中,该文件与扩展一起提供。您可以在文件夹Resources/Private/Schemas/中找到该文件。