現在の位置: ホーム> 最新記事一覧> Laravelはパブリックページの読み込み:ビューレイアウトテクノロジーの詳細な説明

Laravelはパブリックページの読み込み:ビューレイアウトテクノロジーの詳細な説明

gitbox 2025-06-18

ビューでパブリックページをロードするためのLaravel実装方法

Laravelは、パブリックページをロードおよび管理する便利な方法を提供する強力なPHPフレームワークです。プロジェクト開発中、通常、同じヘッドとテールの内容を共有する必要がある複数のビューがあります。各ビューでこれらのコンテンツの繰り返しの書き込みを避けるために、Laravelはレイアウトビューテクノロジーを提供し、共通のヘッドコードとテールコードを1つのレイアウトファイルに集中させることができ、他のビューでこのレイアウトファイルを継承することでコードの再利用を実現します。

以下に、Laravelのレイアウトビューテクノロジーを使用して、パブリックページの読み込みを実現する方法を紹介します。

ステップ1:パブリックレイアウトファイルを作成します

まず、 `resources/views/layouts`フォルダーにapp.blade.php`という名前のレイアウトファイルを作成します。このファイルは、すべてのビューで共有されるパブリックレイアウトファイルとして機能します。レイアウトファイルでは、共通のヘッドとテールHTMLコードを定義し、ページの特定の領域のコンテンツを予約するために「@hight」ディレクティブを使用します。

 
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>@yield('title')</title>
</head>
<body>
    <header>
        <!-- パブリックヘッドコンテンツ -->
    </header>
    @yield('content')
</main>

<footer>
    <!-- パブリックテールコンテンツ -->
</footer>

このレイアウトファイルでは、 `@yield( 'title')`と `@yield( 'content')`ディレクティブを使用します。次に、ビューファイルでこれらのプレースホルダーを使用します。

ステップ2:ビューファイルを作成し、レイアウトを継承します

次に、「home.blade.php」など、「resources/views」フォルダーに新しいビューファイルを作成し、作成したばかりのパブリックレイアウトファイルを継承します。

 
@extends('layouts.app')
<p>@section('title', 'フロントページ')</p>
<p>@section('content')<br>
<h1>私のホームページへようこそ!</h1><br>
<p>これは私の個人的なブログです,いらっしゃいませ!</p><br>
@endsection<br>

このビューファイルでは、 `@extends( 'layouts.app')`ディレクティブを介して `app.blade.php`レイアウトファイルを継承し、` @yield( 'title') `directiveで予約されたスペースを入力します。次に、 `@section( 'content')`指令を使用して、 `@yield( 'content')`によって予約されたコンテンツ領域を入力します。

ステップ3:最終的なHTMLコンテンツを生成します

Laravelがこのビューファイルをレンダリングすると、塗りつぶされたコンテンツをパブリックレイアウトファイルの対応する場所に自動的に挿入します。最終的なHTMLコンテンツは次のとおりです。

 
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>フロントページ</title>
</head>
<body>
    <header>
        <!-- パブリックヘッドコンテンツ -->
    </header>
    <h1>私のホームページへようこそ!</h1>
    <p>これは私の個人的なブログです,いらっしゃいませ!</p>
</main>

<footer>
    <!-- パブリックテールコンテンツ -->
</footer>

まとめ

Laravelのレイアウトビューテクノロジーを通じて、複数のビューで共通のヘッドコードとテールコードの繰り返しの書き込みを効果的に回避できます。パブリックレイアウトファイルを作成し、ビューで「@extends」および `@sectionディレクティブを使用することにより、パブリックコンテンツを複数のビューに簡単に統合して、コードの再利用性とメンテナンスを改善できます。