Reputation: 21
Here I want to make one submenu active out of four submenu. This is for dynamic slug .
<div class="solution_tabs">
@foreach($allMenu as $menu)
<ul class="submenu">
@if(isset($menu->submenus))
@foreach($menu->submenus as $submenu)
@if(isset($submenu->page->slug))
<li class="active"><a href="{{url($submenu->page->slug)}}">{{ $submenu->name}}</a></li>
@else
<li><a href="{{url($submenu->page->slug)}}">{{ $submenu->name}}</a></li>
@endif
@endforeach
@endif
</ul>
@endforeach
</div>
same as this image,i want one active submenu from dynamic submeun of the menu
Upvotes: 1
Views: 840
Reputation: 772
You should compare the current URL with your link URLs in order to detect coincidences. One way to accomplish it could be injecting request in your blade file, using
@inject('request', 'Illuminate\Http\Request')
and then check for matches like this:
<li class="{{ $request->segment(1) == $submenu->page->slug ? 'active' : '' }}"><a href="{{url($submenu->page->slug)}}">{{ $submenu->name}}</a></li>
Please note that segment()
is 0 based, so segment(1)
works when your url is like example.com/segment(0)/page->slug
Upvotes: 1