Skeletor
Skeletor

Reputation: 3403

What is the proper way of setting the page meta title in laravel

In many examples and documents I generally see that the page title is set via someController->main.blade.php->somePage.blade.php. Something like:

SomeController.php

public function someAction()
{
    $title = 'Some Title';
    return view('somePage', ['title'=>$title]);
}

main.blade.php

<head>
    <title> @section('title') | Page @show </title>
...

somePage.blade.php

@section ('title')
   {{$title}} @parent
@endsection

Wouldn't it be mode convenient to set it directly/only over the controller and blade layout file? I mean something like:

SomeController.php

public function someAction()
{
    $title = 'Some Title';
    return view('somePage', ['title'=>$title]);
}

main.blade.php

<head>
   <title>{{ $title }}</title>
...

Wouldn't it be better to use it in that way?

Upvotes: 2

Views: 1093

Answers (1)

herrjeh42
herrjeh42

Reputation: 2793

I prefer not to assign the title from the controller - it's content and should be in the template from my point of view. I like to have a section in the template like

//layout file  
<title> FancyApp - @yield('title')</title>   

// Template 
@section('title', 'Page Title')

Upvotes: 2

Related Questions