Yeni bir kırıntı geçersiz kılma tanımlamaya çalıştım, ancak yine de site varsayılanını alıyorum.
Foo_breadcrumb özel bir modül oluşturdum:
- modules/custom/foo_breadcrumb
- foo_breadcrumb.info.yml
- foo_breadcrumb.services.yml
- src/
- BreadcrumbBuild.php
İşte foo_breadcrumb.services.yml:
services:
foo_breadcrumb.breadcrumb:
class: Drupal\foo_breadcrumb\BreadcrumbBuild
tags:
- { name: breadcrumb_builder, priority: 100 }
İçimde src/BreadcrumbBuild.php:
<?php
namespace Drupal\foo_breadcrumb;
use Drupal\Core\Breadcrumb\BreadcrumbBuilderBase;
class BreadcrumbBuild implements BreadcrumbManager {
/**
* {@inheritdoc}
*/
public function applies(array $attributes) {
return true;
}
/**
* {@inheritdoc}
*/
public function build(array $attributes) {
$breadcrumb[] = $this->l($this->t('Test'), NULL);
$breadcrumb[] = $this->l($this->t('Test2'), 'test');
return $breadcrumb;
}
}
?>
Drupal 8 ekmek kırıntılarında bulabileceğim tek yazı üzerinde çalışmaya başladım , ancak mesele artık PSR-4 otomatik yüklemesinin artık yerinde olmayan eski bir sürümünü kullanıyor gibi görünüyor (kayıt için 8.0.0'dayım -dev-beta3) ve diğer tüm modüllerin kod tabanında nasıl çalıştığını anladım.
Şimdi modülün yüklenmesini sağlamak için bunun doğru olduğundan eminim; ancak emin değilim
class BreadcrumbBuild extends BreadcrumbBuilderBase
doğru. Sorun şu ki, bahsettiğim eski öğretici, genişleyen sözler BreadcrumbBuilderBase, ancak daha güncel dokümanlar bundan bahsetmiyor gibi görünüyor ve güncel olup olmadığını merak ediyorum - ve bunu nasıl yapmalıyım.
Aynı şekilde, services.ymldosyanın bu konuda ne yaptığını gerçekten anlamıyorum , bunun için hiçbir yerde belge yok.