Laravel最低限これだけは押さえたいブレードの共通化方法


自分の勉強メモ用です。

雛形を作っておく

/resources/views/layout/common.blade.php

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>@yield('title')</title>
</head>
<body>
    @yield('content')
</body>
</html>

@yield('title')@yield('content')のように表示内容を変えたい部分を変数的な感じでyieldを埋めておく

実際に呼び出す側のファイル

/resources/views/index.blade.php

// 呼び出す雛形を@extendsで指定する。
// ディレクトリが違うのは「.」で繋げて指定する
@extends('layout.common')

// 表示内容を変えたい変数部分は@sectionで指定する
@section('title', 'インデックスページ')

@section('content')
    <h1>このページはインデックスページです。</h1>
    <p>ダミーダミーダミー</p>
@endsection