© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
FilamentF
Filament•10mo ago•
8 replies
wdog

Custom Icons in Breadcrumbs

Hi!

Is It possibile to add an icon before each element of a custom breadcrumb?

I've made a custom
ViewField
ViewField
in a form with a custom breadcrumb to easily navigate related resources

(customer->contracts->resources)
(customer->contracts->resources)


what I need is to add a custom icon for each resource

( icon_customer + customer-> icon_contract +  contracts-> icon_resource +  resources)
( icon_customer + customer-> icon_contract +  contracts-> icon_resource +  resources)
Solution
<?php

namespace App\Forms\Components;

use Illuminate\Support\Collection;
use Filament\Forms\Components\View;
use Filament\Forms\Components\Field;

class CustomBreadcrumbField extends Field
{
    protected string $view = 'forms.components.custom-breadcrumb-field';

    protected \Closure $getItemsUsing;



    public function items(\Closure $closure): static
    {
        $this->getItemsUsing = $closure;
        return $this;
    }

    public function getItems(): array
    {
        $items =  ($this->getItemsUsing)($this->getRecord());

        return  collect($items)->map(function ($item) {
            return array_merge([
                'label' => null,
                'sub-label' => null,
                'url' => null,
                'icon' => null,
            ], $item);
        })->toArray();
    }
}
<?php

namespace App\Forms\Components;

use Illuminate\Support\Collection;
use Filament\Forms\Components\View;
use Filament\Forms\Components\Field;

class CustomBreadcrumbField extends Field
{
    protected string $view = 'forms.components.custom-breadcrumb-field';

    protected \Closure $getItemsUsing;



    public function items(\Closure $closure): static
    {
        $this->getItemsUsing = $closure;
        return $this;
    }

    public function getItems(): array
    {
        $items =  ($this->getItemsUsing)($this->getRecord());

        return  collect($items)->map(function ($item) {
            return array_merge([
                'label' => null,
                'sub-label' => null,
                'url' => null,
                'icon' => null,
            ], $item);
        })->toArray();
    }
}
Jump to solution
Filament banner
FilamentJoin
A powerful open source UI framework for Laravel • Build and ship admin panels & apps fast with Livewire
20,307Members
Resources
Was this page helpful?

Similar Threads

Recent Announcements

Similar Threads

Add breadcrumbs to custom page
FilamentFFilament / ❓┊help
8mo ago
Breadcrumbs in TopBar
FilamentFFilament / ❓┊help
2y ago
Long $recordTitleAttribute in breadcrumbs
FilamentFFilament / ❓┊help
3y ago
Resource breadcrumbs
FilamentFFilament / ❓┊help
4mo ago