自定义头部导航条

如果要在顶部导航条上添加html元素, 打开app/Admin/bootstrap.php

  1. use Dcat\Admin\Layout\Navbar;
  2. use Dcat\Admin\Admin;
  3. Admin::navbar(function (Navbar $navbar) {
  4. $navbar->left('html...');
  5. $navbar->right('html...');
  6. });

leftright方法分别用来在头部的左右两边添加内容,方法参数可以是任何可以渲染的对象(实现了HtmlableRenderable接口或者包含__toString()方法的对象)或字符串

添加下拉面板

在模板文件中加上

  1. <ul class="nav navbar-nav">
  2. <li class="dropdown dropdown-notification nav-item">
  3. <a class="nav-link nav-link-label" href="#" data-toggle="dropdown" aria-expanded="true"><i class="ficon feather icon-bell"></i><span class="badge badge-pill badge-primary badge-up">5</span></a>
  4. <ul class="dropdown-menu dropdown-menu-media dropdown-menu-right ">
  5. <li class="dropdown-menu-header">
  6. <div class="dropdown-header m-0 p-2">
  7. <h3 class="white">5 New</h3><span class="grey darken-2">App Notifications</span>
  8. </div>
  9. </li>
  10. <li class="scrollable-container media-list ps ps--active-y">
  11. <a class="d-flex justify-content-between" href="javascript:void(0)">
  12. <div class="media d-flex align-items-start">
  13. <div class="media-left"><i class="feather icon-plus-square font-medium-5 primary"></i></div>
  14. <div class="media-body">
  15. <h6 class="primary media-heading">You have new order!</h6><small class="notification-text"> Are
  16. your going to meet me
  17. tonight?</small>
  18. </div><small>
  19. <time class="media-meta" datetime="2015-06-11T18:29:20+08:00">9 hours
  20. ago</time></small>
  21. </div>
  22. </a><a class="d-flex justify-content-between" href="javascript:void(0)">
  23. <div class="media d-flex align-items-start">
  24. <div class="media-left"><i class="feather icon-download-cloud font-medium-5 success"></i></div>
  25. <div class="media-body">
  26. <h6 class="success media-heading red darken-1">99% Server load</h6>
  27. <small class="notification-text">You got new order of goods.</small>
  28. </div><small>
  29. <time class="media-meta" datetime="2015-06-11T18:29:20+08:00">5 hour
  30. ago</time></small>
  31. </div>
  32. </a><a class="d-flex justify-content-between" href="javascript:void(0)">
  33. <div class="media d-flex align-items-start">
  34. <div class="media-left"><i class="feather icon-alert-triangle font-medium-5 danger"></i></div>
  35. <div class="media-body">
  36. <h6 class="danger media-heading yellow darken-3">Warning notifixation
  37. </h6><small class="notification-text">Server have 99% CPU usage.</small>
  38. </div><small>
  39. <time class="media-meta" datetime="2015-06-11T18:29:20+08:00">Today</time></small>
  40. </div>
  41. </a>
  42. <div class="ps__rail-x" style="left: 0px; bottom: 0px;"><div class="ps__thumb-x" tabindex="0" style="left: 0px; width: 0px;"></div></div><div class="ps__rail-y" style="top: 0px; right: 0px; height: 254px;"><div class="ps__thumb-y" tabindex="0" style="top: 0px; height: 184px;"></div></div></li>
  43. <li class="dropdown-menu-footer"><a class="dropdown-item p-1 text-center" href="javascript:void(0)">Read
  44. all notifications</a></li>
  45. </ul>
  46. </li>
  47. </ul>

使用

  1. $navbar->right(view('...'));

添加下拉菜单

  1. <ul class="nav navbar-nav">
  2. <li class="dropdown dropdown-language nav-item">
  3. <a class="dropdown-toggle nav-link" href="#" id="dropdown-flag" data-toggle="dropdown">
  4. <i class="flag-icon flag-icon-us"></i>
  5. <span class="selected-language">English</span>
  6. </a>
  7. <ul class="dropdown-menu" aria-labelledby="dropdown-flag">
  8. <li class="dropdown-item" href="#" data-language="en">
  9. <a><i class="flag-icon flag-icon-us"></i> English</a>
  10. </li>
  11. <li class="dropdown-item" href="#" data-language="fr">
  12. <a><i class="flag-icon flag-icon-fr"></i> French</a>
  13. </li>
  14. <li class="dropdown-item" href="#" data-language="de">
  15. <a><i class="flag-icon flag-icon-de"></i> German</a>
  16. </li>
  17. </ul>
  18. </li>
  19. </ul>

使用

  1. $navbar->right(view('...'));

更多的组件可以参考AdminLTE3

修改默认用户面板

打开app/Admin/bootstrap.php,写入

  1. admin_inject_section(Admin::SECTION['NAVBAR_USER_PANEL'], function () {
  2. return view('admin.partials.navbar-user-panel', ['user' => Admin::user()]);
  3. });

navbar-user-panel.blade.php视图内容

  1. @if($user)
  2. <li class="dropdown dropdown-user nav-item">
  3. <a class="dropdown-toggle nav-link dropdown-user-link" href="#" data-toggle="dropdown">
  4. <div class="user-nav d-sm-flex d-none">
  5. <span class="user-name text-bold-600">{{ $user->name }}</span>
  6. <span class="user-status"><i class="fa fa-circle text-success"></i> {{ trans('admin.online') }}</span>
  7. </div>
  8. <span>
  9. <img class="round" src="{{ $user->getAvatar() }}" alt="avatar" height="40" width="40" />
  10. </span>
  11. </a>
  12. <div class="dropdown-menu dropdown-menu-right">
  13. <a href="{{ admin_url('auth/setting') }}" class="dropdown-item">
  14. <i class="feather icon-user"></i> {{ trans('admin.setting') }}
  15. </a>
  16. <div class="dropdown-divider"></div>
  17. <a class="dropdown-item" href="{{ admin_url('auth/logout') }}">
  18. <i class="feather icon-power"></i> {{ trans('admin.logout') }}
  19. </a>
  20. </div>
  21. </li>
  22. @endif