2017-06-30 7 views
1

私はLaravelに2ページあります。2つの部分で同じマスターページのレイアウトを拡張する方法は?

@extends('master')を使用して埋め込むことができるヘッダー、コンテンツ、およびフッターで動作するモーダルを得るために、このレイアウトを別のブレードパーシャルで簡単に拡張できます。

私の問題は、次のとおりです。

最初のページには、header1.blade.phpを使用しています。

2ページ目はheader2.blade.phpです。

オンmaster.blade.phpは私のマスターページです。 index.blade.php

<body> 
    @include('partials.header1') 
    @yield('content') 
    @include('partials.footer') 
</body> 

master.blade.phpextends('master.blade.phpとマスターページで使用されます。

オンlistnews.blade.phpには同じマスターページがあります。

listnews.blade.phpにはpartials.header2を使用します。

これを行う方法はありますか。

答えて

1

@ lewis4uの回答の代わりに、@section指示を使用することができます。

この方法では、使用するデフォルトヘッダーを定義できますが、必要に応じていつでも変更することができます。

まず、であるためにあなたのmaster.blade.phpファイルを変更します。

<body> 
@section('header') 
    @include('partials.header1') 
@show 
@yield('content') 
@include('partials.footer') 
</body> 

次に、あなたのlistnews.blade.phpファイルに延びた後、ちょうど別のセクションを追加します。

@section('header') 
    @include('partials.header2') 
@endsection 

は、この情報がお役に立てば幸い!

+0

これはセクション( 'ヘッダー')を上書きするだけですか? – lewis4u

+0

@ lewis4uはい。 https://laravel.com/docs/5.4/blade#defining-a-layout –

+0

私はあなたのよりエレガントな見つけるために私は私の答えを削除します! – lewis4u

関連する問題