Как изменить разные заголовки для разных страниц в laravel - PullRequest
0 голосов
/ 25 апреля 2018

Мне нужно вызвать другой заголовок для хостинга и о страницах, упомянутых ниже, при выполнении кода ниже я получаю сообщение об ошибке "Неопределенная константа класса 'хостинг'".подскажите, как решить эту проблему и вызвать разные заголовки для разных страниц.

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

Ответы [ 3 ]

0 голосов
/ 25 апреля 2018
@if(Route::currentRouteName() == 'hosting') 

    @include('partials.header');

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

     @include('partials.header1'); 

@endif

используйте Route::currentRouteName() для получения названия текущего маршрута.

0 голосов
/ 25 апреля 2018

Посмотрите на этот ответ:

Как получить название текущего маршрута в laravel 5?

Я полагаю, вы не понимаете, как получить доступ к текущему названию маршрута. Для доступа к текущему маршруту есть несколько способов:

Route::getCurrentRoute()->getPath();  // Route path
Request::route()->getName();  // Route Name
$request->path();  // URL
0 голосов
/ 25 апреля 2018

Используйте \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
...