Currently seeking new career opportunities in web development, particularly with Laravel, Hire Me

Build a Dropbox File Manager in Laravel - Part 2 Breadcrumbs

David Carr

Laravel Framework Tutorials PHP & MySQL

Series


It's good that any folder on Dropbox can be accessed but it would be even better if we had a dynamic breadcrumb to allow you to jump back to any folder in the path, Let's add this!

Open FileManagerController.php and go to the Index method.

Add this snippet:

$breadcrumb = '';
$last_segment = '';
$breadcrumb.= '<ol class="breadcrumb">';
foreach (request()->segments() as $segment) {
    $last_segment .= '/' . $segment;
    $breadcrumb.= '<li class="breadcrumb-item"><a href="'.$last_segment.'">' . ucfirst($segment) . '</a></li>';
}
$breadcrumb.= '</ol>';

Let's go though what this code does.

First create the variables $breadcrumb and $last_segment.
The $breadcrumb will hold an orderd list with a class of breadcrumb. This is a standard bootstrap class to take care of the styling.

Next loop over request()->segments() this will containing an array of all the URL parts seperated from the slashes.
Upon each loop add the precedding slash to the $segment and add that to the a link. the $last_segment will contain the url for each folder path.

Pass the $breadcrumb to the view:

 return view('filemanager.index', compact('results', 'breadcrumb'));

Then display where you want the breadcrumbs to display:

{!! $breadcrumb !!}

 

Laravel Modules Your Logo Your Logo Your Logo

Become a sponsor

Help support the blog so that I can continue creating new content!

Sponsor

My Latest Book

Modular Laravel Book - Laravel: The Modular way

Learn how to build modular applications with Laravel Find out more

Subscribe to my newsletter

Subscribe and get my books and product announcements.

Learn Laravel with Laracasts

Faster Laravel Hosting

© 2006 - 2024 DC Blog. All code MIT license. All rights reserved.