How to Create Layouts In Laravel Using Blade Templating Engine

by Saquib Rizwan  September 21, 2017

Layouts are often the starting point of many web development projects. Laravel comes with Blade templating engine which enables the developer to produce HTML based sleek designs and themes.

Create layout in laravel

All views in Laravel are usually built in the blade template.  Blade engine is fast in rendering views because it caches the view until they are modified. All the files in resources/views have the extension .blade.php.

Laravel blade template is pretty impressive in performance.  This tutorial will serve as an introduction to this templating engine.

Note: For the purpose of this tutorial, you will need a fresh installation of Laravel project.

Create Pages Routes

First, I will create the routes to gain access to my page. Open routes/web.php and add the following lines in it.

We are only working on views only, and thus don’t need to access the controllers.  To learn more about controllers, take a look at: Working With Controllers And Middleware

Create Views Structure

Now that the routes are ready, let’s create the Views structure by creating the following folders and files.

Create Includes

Create the following includes, with the following code:

head.blade.php

Header.blade.php

footer.blade.php

Create the Layout

I will use @include to bring in tiny parts of the code that I have created in includes folders, and @yield to bring in content from the individual pages I will be using.

Blade allows the use of the layout that I just created by using @extends. By creating @section, I will create a section that will be used in the layout. Here I will use @section(‘content’) and in the layout, everything that I will type here will be injected in @yield in the layout.
Go to resources/views/pages and put the following code in these files.

pages/home.blade.php

pages/contact.blade.php

Conclusion

This is the simple foundation and the basic steps for getting starting with Blade templating engine. Now that you know the file structures and the way Blade template engine renders the view, I will demonstrate how to integrate Bootstrap template with Laravel in my next article. So stay tuned.

Create Laravel apps without the worry of server management.

Deploy your app on optimized PHP hosting servers for Laravel.

About Saquib Rizwan

Saquib is a PHP Community Expert at Cloudways - A Managed PHP Hosting Cloud Platform. He is well versed in PHP and regularly contributes to open source projects. For fun, he enjoys gaming, movies and hanging out with friends. You can email him at saquib.rizwan@cloudways.com

Stay Connected:

You Might Also Like...