如何在laravel中更改各个页面的不同标题

时间:2018-04-25 12:20:59

标签: laravel laravel-5 laravel-5.2 laravel-5.1

我需要调用不同的标题来托管和下面提到的页面,而执行下面的代码我得到的错误是“未定义的类常量'托管'”。建议我如何解决这个问题,并为各种页面调用不同的标题。

@if(Route::hosting == 'hosting')
{
  @include('partials.header');
}
@elseif(Route::About == 'About'){
   @include('partials.header1');
}
 @endif

3 个答案:

答案 0 :(得分:3)

使用\Request::is()检查当前路线,而不是'在{...}条件中使用@if,如果只有两个条件@if...@else...@endif就足够了。

@if(\Request::is("hosting"))
  @include('partials.header');
@else
   @include('partials.header1');
@endif

您还可以避免使用其他标题 partials.header1,如果没有太大区别。

将名为is_hosting的变量作为true/false传递并相应地显示内容。

@if(\Request::is("hosting"))
  @include('partials.header',["is_hosting"=>true]);
@else
  @include('partials.header',["is_hosting"=>false]);
@endif

内部partials.header

@if(isset($is_hosting) && $is_hosting) 
    header's content
@else
    header1's content
@endif

答案 1 :(得分:0)

@if(Route::currentRouteName() == 'hosting') 

    @include('partials.header');

@elseif(Route::currentRouteName() == 'About')

     @include('partials.header1'); 

@endif

使用Route::currentRouteName()获取当前路线的名称。

答案 2 :(得分:0)

看一下这个答案:

How to get current route name in laravel 5?

我相信你会混淆如何访问当前的路由名称。有几种方法可用于访问当前路线:

Route::getCurrentRoute()->getPath();  // Route path
Request::route()->getName();  // Route Name
$request->path();  // URL