Pluginify

Masuk Daftar
Home > Blog > Laravel > Blade Layout Laravel: Panduan Lengkap Membuat Struktur Templating yang Rapi

Blade Layout Laravel: Panduan Lengkap Membuat Struktur Templating yang Rapi

Blade Layout Laravel: Panduan Lengkap Membuat Struktur Templating yang Rapi

Setelah memahami konsep View Blade, langkah berikutnya dalam pengembangan antarmuka Laravel adalah mempelajari Blade Layout. Blade Layout merupakan teknik untuk membuat struktur tampilan yang dapat digunakan ulang (reusable), sehingga mempermudah pengembangan UI aplikasi yang konsisten dan rapi.

Konsep ini sangat penting dalam proyek skala kecil hingga besar karena membantu memisahkan bagian tampilan yang selalu sama seperti header, footer, sidebar, hingga script, sehingga developer fokus mengisi bagian konten saja.

Apa Itu Blade Layout?

Blade Layout adalah fitur dari Blade Templating Engine yang memungkinkan developer membuat template dasar dan meneruskannya ke berbagai halaman lain menggunakan konsep inheritance.

Dengan pendekatan ini, struktur utama seperti <html>, <head>, <body> cukup ditulis sekali dalam sebuah layout, kemudian halaman lain tinggal mengisi bagian yang berubah menggunakan section.

Kenapa Blade Layout Penting?

Berikut beberapa keunggulan penggunaan Blade Layout:

Menghemat Waktu Pembuatan UI — Tidak perlu menulis ulang struktur yang sama.

Konsistensi Antar Halaman — Desain dan struktur tetap seragam.

Mudah Maintenance — Perubahan pada UI cukup dilakukan di satu file.

Mendukung Modular UI — Bisa dikombinasikan dengan komponen Blade.

Dengan manfaat di atas, Blade Layout menjadi fondasi penting dalam pengembangan Laravel moden.


Struktur Dasar Blade Layout

Mari mulai dari membuat file layout utama.

1. Membuat Layout Utama

Buat file di direktori berikut:

resources/views/layouts/main.blade.php

Isi contoh layout dasar:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>@yield('title')</title>
    <link rel="stylesheet" href="/css/app.css">
</head>
<body>

    @include('partials.navbar')

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

    @include('partials.footer')

    @yield('scripts')

</body>
</html>

Penjelasan:

  • @yield('title') → untuk judul halaman
  • @yield('content') → untuk konten inti halaman
  • @yield('scripts') → optional untuk script halaman tertentu
  • @include() → menyisipkan file bagian lain seperti navbar & footer

2. Membuat Partial Layout (Opsional)

Partial cocok untuk UI yang sering dipakai seperti navigasi dan footer.

Contoh Partial Navbar

Buat file:

resources/views/partials/navbar.blade.php

Isi:

<nav>
    <ul>
        <li><a href="/">Beranda</a></li>
        <li><a href="/profile">Profil</a></li>
        <li><a href="/contact">Kontak</a></li>
    </ul>
</nav>

Contoh Partial Footer

Buat file:

resources/views/partials/footer.blade.php

Isi:

<footer>
    <small>© 2026 Laravel App. All rights reserved.</small>
</footer>

Dengan partial, perubahan UI jadi jauh lebih mudah dikelola.


3. Menggunakan Blade Layout di Halaman Lain

Sekarang kita buat halaman yang memakai layout utama.

Buat file baru:

resources/views/home.blade.php

Isi:

@extends('layouts.main')

@section('title', 'Halaman Home')

@section('content')
    <h1>Selamat Datang!</h1>
    <p>Ini adalah contoh penggunaan Blade Layout dalam Laravel.</p>
@endsection

Penjelasan:

  • @extends() → menghubungkan ke layout
  • @section() → mengisi blok yang ada di @yield()

4. Menambahkan Script Khusus Halaman (Opsional)

Untuk halaman yang butuh script tambahan, gunakan @section lagi.

Contoh:

@section('scripts')
<script>
    console.log("Home page loaded!");
</script>
@endsection

Jika tidak ditambahkan, maka bagian script tidak akan tampil.


Routing Controller ke View

Agar halaman tampil di browser, tambahkan routing:

File: routes/web.php

Route::get('/home', function() {
    return view('home');
});

Lalu akses:

http://localhost:8000/home

Fleksibilitas Blade Layout dalam Proyek Nyata

Dalam proyek yang lebih kompleks, Blade Layout bisa digabung dengan:

Blade Components (fitur card, alert, modal, button)

Stack & Push Script (untuk stack script dinamis)

Slot & Attribute Component (struktur UI lebih modular)

Template Admin Panel (sidebar + navbar + content area)

Hal ini menjadikan Blade Layout sangat fleksibel dalam skenario UI apapun.


Blade Stack (Opsional Tingkat Lanjut)

Laravel menyediakan fitur @stack dan @push untuk menambahkan script dari child template tanpa merusak struktur layout.

Di Layout

@stack('scripts')

Di Child

@push('scripts')
<script>
    alert("Hello from Blade Stack!");
</script>
@endpush

Fitur ini sangat berguna untuk script modul seperti DataTables atau ChartJS.


Kesimpulan

Blade Layout merupakan fitur templating yang penting dalam Laravel karena membantu developer membuat tampilan aplikasi yang:

✔ konsisten,

✔ modular,

✔ mudah dipelihara, dan

✔ efisien.

Dengan memanfaatkan @extends, @yield, @section, @include, hingga @stack, tampilan UI dapat dibuat lebih rapi dan profesional.

Setelah memahami Blade Layout, materi selanjutnya bisa masuk ke Request Response, Model Eloquent, atau Migration Database, sesuai urutan playlistmu.

Pluginify
Pluginify