2015-12-27 3 views
1

Я только начинаю изучать Laravel и хочу знать, как это сделать. Затем я объясню код.Изменить название страницы внутри другого - Laravel

У меня есть файл includes/head.blade.php. этот файл содержит вещи, которые вы находите внутри <head>. Так он содержит <title>@yield('title')</title> Если я теперь включить этот файл в странице скажу pages/about.blade.php как этот @include('includes.head'), как же я могу изменить <title> вложен внутри включаемой с помощью этой линии @section('title', ' bout Us')

ответ

0

Если включить файл лезвие как @include('includes.head') то вы не можете сделать <title>@yield('title')</title> в head.blade.php. Правильный способ сделать это передавая значение в то время, включая файл как:

@include('includes.head',['title'=>'About Us']) 

и в head.blade.php вы должны сделать так:

<title> 
    @if(isset($title)) 
     {{ $title }} 
    @endif 
</title> 

Но если вы extendsheade.blade.php затем вы можете сделать так:

head.blade.php

<title>@yield('title')</title> 

about.blade.php

@extends('includes.head') 
@section('title') 
    {{ "About Us" }} 
@endsection 

Для получения дополнительной информации Check this

0

Я думаю, что вы можете использовать @include как это, проверки это DOC.

@include('includes.head', ['title' => 'About Us']) 

и title следует печатать, как,

<title>{{ $title }}</title> 

ДЛЯ лучшей практике

Проверяйте Laravel лезвие templating функцию,

вы можете определить master layout , расширяя этот макет, вы можете создавать новые виды. Как и в этом DOC.

master.blade.php

<html> 
    <head> 
     <title>@yield('title')</title> 
    </head> 
    <body> 
     @section('sidebar') 
      This is the master sidebar. 
     @show 

     <div class="container"> 
      @yield('content') 
     </div> 
    </body> 
</html> 

about.blade.php

@extends('master') 

@section('title', 'About Us') // this will replace the **title section** in master.blade 
//OR 
//@section('title') 
// About Us 
//@endsection 

@section('sidebar') 
    <p>This is appended to the master sidebar.</p> 
@endsection 

@section('content') 
    <p>This is my body content.</p> 
@endsection 
Смежные вопросы