Использование слотов в Laravel для динамического внедрения контента

Чтобы использовать слоты в Laravel, вы можете выполнить следующие действия:

  1. Определите файл макета. Создайте файл макета (например, layout.blade.php) в каталоге views. Этот файл будет служить основным шаблоном для ваших представлений.

  2. Добавление слота в макет. Внутри файла макета определите слот с помощью директивы @yield. Например, @yield('content')создает слот с именем content.

  3. Расширьте макет. В файлах представлений расширьте макет, используя директиву @extendsи указав созданный вами файл макета. Например, @extends('layout').

  4. Вставка содержимого в слот. В расширенном представлении вы можете вставить контент в слот с помощью директивы @section. Например, @section('content'), за которым следует HTML-код вашего контента или синтаксис Blade.

Вот пример:

layout.blade.php:

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

example.blade.php:

@extends('layout')
@section('title', 'Page Title')
@section('content')
    <h1>Hello, world!</h1>
@endsection

В этом примере содержимое, определенное в блоке @section('content')в example.blade.php, будет вставлено в @yield ('content')слот в layout.blade.php.