Intenté definir una nueva anulación de la ruta de exploración, pero todavía obtengo el sitio predeterminado.
He creado un módulo personalizado, foo_breadcrumb:
- modules/custom/foo_breadcrumb
- foo_breadcrumb.info.yml
- foo_breadcrumb.services.yml
- src/
- BreadcrumbBuild.php
Aquí está el foo_breadcrumb.services.yml:
services:
foo_breadcrumb.breadcrumb:
class: Drupal\foo_breadcrumb\BreadcrumbBuild
tags:
- { name: breadcrumb_builder, priority: 100 }
En el interior src/BreadcrumbBuild.php, tengo:
<?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;
}
}
?>
Comencé a trabajar en la única escritura que pude encontrar en Drupal 8 breadcrumbs , pero la cuestión es que parece estar usando una versión anterior de la carga automática de PSR-4 que ya no está en su lugar (para el registro estoy en 8.0.0 -dev-beta3), y entonces analicé cómo funcionan todos los demás módulos en la base de código.
Ahora estoy bastante seguro de que esto es correcto para cargar el módulo; sin embargo no estoy seguro si
class BreadcrumbBuild extends BreadcrumbBuilderBase
es correcto. El problema es que el antiguo tutorial al que me vinculé menciona que se extiende BreadcrumbBuilderBase, pero los documentos más actuales no parecen mencionarlo y me pregunto si está desactualizado y cómo debería hacerlo.
Del mismo modo, realmente no entiendo lo services.ymlque está haciendo el archivo a este respecto, no hay documentación en este lugar.