matthew-p / yii2-breadcrumbs-microdata
为面包屑添加微数据。
1.1
2024-05-02 19:12 UTC
Requires
- yiisoft/yii2: *
This package is auto-updated.
Last update: 2024-09-02 20:06:11 UTC
README
为面包屑添加微数据。
安装
安装此扩展的首选方式是通过 Composer。
运行以下命令之一:
php composer.phar require --prefer-dist matthew-p/yii2-breadcrumbs-microdata "*"
或者在您的 composer.json
文件的 require 部分添加以下内容:
"matthew-p/yii2-breadcrumbs-microdata": "*"
使用方法
安装扩展后,只需在您的代码中使用它即可:
在项目中查找
Breadcrumbs::widget([ ... ])
并更改
use mp\bmicrodata\BreadcrumbsMicrodata; // in top BreadcrumbsMicrodata::widget([ 'links' => isset($this->params['breadcrumbs']) ? $this->params['breadcrumbs'] : [], // For PHP7 'links' => $this->params['breadcrumbs'] ?? [] ]);
替代版本
Breadcrumbs::widget([ 'homeLink' => BreadcrumbsUtility::getHome('Home', Yii::$app->getHomeUrl()), // Link home page with microdata 'links' => isset($this->params['breadcrumbs']) ? BreadcrumbsUtility::UseMicroData($this->params['breadcrumbs']) : [], // Get other links with microdata 'options' => [ // Set microdata for container BreadcrumbList 'class' => 'breadcrumb', 'itemscope itemtype' => 'http://schema.org/BreadcrumbList' ], ]);
用于视图页面
// after set $this->title $this->params['breadcrumbs'][] = [ 'label' => 'Articles', 'url' => Url::toRoute('press-center/articles'), ]; $this->params['breadcrumbs'][] = [ 'label' => $this->title, // if there is no url element, then this is the current page. ];
HTML 结果
<ul itemscope="" itemtype="http://schema.org/BreadcrumbList"> <li itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem"> <a href="/" itemprop="item"> <span itemprop="name">Home page</span> </a> <meta itemprop="position" content="1"> </li> <li itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem"> <a href="/press-center/articles" itemprop="item"> <span itemprop="name">Articles</span> </a> <meta itemprop="position" content="2"> </li> <li itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem" class="text-light" style="opacity: 0.65;"> <span itemprop="name">10 Must-Read Books for Programmers</span> <meta itemprop="position" content="3"> </li> </ul>
就这些了。检查一下。