
Learn Laravel basics and build a real-world CMS blog from scratch by setting up the environment, mastering routes, controllers, blade, models, migrations, and authentication.
Explore what Laravel is as a modern PHP framework built on MVC, with blade templating, eloquent ORM, routing, controllers, and authentication for a CMS blog.
If you have already downloaded VS Code and exam materials, skip the second two videos and start the course right away.
Install Xampp to create a local development server with Apache, MySQL, PHP, and phpMyAdmin; learn to download, configure components, grant firewall access, and run localhost index.php.
Install Visual Studio Code on Windows by downloading from the official site, accept the license, and set up a desktop icon to start coding for your PHP Laravel blog course.
Install composer, the PHP package manager, by downloading from composer, running the installer, selecting all users, configuring the environment path, and verifying the version in the command prompt.
Install Node.js and npm to compile assets and create JavaScript and CSS files, then run the server for Laravel UI-based projects, enabling server-side JavaScript and asset management.
Learn to create a new Laravel project using composer create-project or by installing the Laravel installer, verify the composer path, and start the server with php artisan serve.
Explore the Laravel project structure, from controllers, models, and providers to bootstrap, config, and database components, and review public, resources, routes, storage, tests, and vendor.
Learn how routing connects a URL to a specific action in Laravel, using get routes, closures or controller methods, and returning views or text with parameters.
Explore routing in Laravel by writing get and post routes, handling form submissions, and returning data, while learning route methods, named routes, and how to link routes to controller actions.
Explore how Laravel controllers organize business logic within the MVC pattern, linking routes to controller methods, creating controllers with Artisan, and returning views with data using compact.
Learn how to create and use a Laravel resource controller with artisan, which auto generates index, create, store, show, edit, update, and destroy methods for CRUD routes.
Explore blade templating in Laravel to write clean, dynamic html with directives and curly brace syntax, safely echo data, and leverage compilation and caching for performance.
Learn blade layouts in Laravel to create a master template with reusable header, footer, and sidebar, using extends, section, yield, and include for modular views.
Models in Laravel represent a single database table and interact with it through MVC, paired with migrations; configure table, fillable or guarded fields, hidden data, timestamps, and a primary key.
Learn how Eloquent ORM in Laravel lets you treat database tables as PHP objects, using the post model for create, insert, and read.
Master eloquent basics by learning find, first, and where queries, retrieving posts by id, and updating records with save or update to perform CRUD.
Learn how to delete records with Laravel Eloquent: delete by id or condition, truncate all, and use latest, count, and exists checks.
Explore advanced Eloquent queries in Laravel, including order by, take, select, and where conditions to fetch posts efficiently by created_at and specific columns.
Learn how migrations in Laravel act as database version control, creating and updating tables with PHP code, and use artisan commands to apply, rollback, and manage migrations for consistency.
Learn to alter migrations by creating a new migration that updates the posts table with status and author columns, then run php artisan migrate to apply changes.
Learn how Laravel seeds data with seeders to automatically insert predefined posts, using a seeder class, run method, and PHP Artisan db seed commands to populate the posts table.
Learn how Laravel factories generate fake data with faker and seeders for testing. Create a post factory with title, body, status, and author, then seed 20–25 posts.
Explore how to test Laravel models with tinker, performing CRUD operations and relationships directly in the terminal using artisan tinker, factories, and queries. Test all, find, create, update.
Build a Laravel post CRUD by fetching recent posts, displaying them in an all-posts view, and wiring a single-post page with named routes and bootstrap styling.
Learn how to build a Laravel mvc crud flow to create posts, including forms, post requests, routing, controller actions, views, and database insertion.
Learn to update and delete posts in a Laravel CRUD app by routing to edit forms, submitting via post requests with CSRF protection, and handling redirects after save or delete.
Learn validation in Laravel by using the request's validate method to enforce required, min, max, and email rules. Redirect back with errors and old input before saving data.
Learn how to implement flash messages in Laravel by storing a one-time status in the session, triggering on redirects, and displaying Bootstrap alerts in Blade.
Implement Laravel pagination to load three posts per page, and enable bootstrap-styled navigation with links in the view and the page query parameter.
Explore the Laravel Artisan command line interface to generate files, run migrations, clear caches, and debug your Laravel app, with practical commands for routes, Tinker, and config.
Explore middlewares as filters that run before or after a request hitting a controller, including a minimum age check in Laravel 12 with route aliasing.
Explore Laravel's query builder for direct table access, compare it with eloquent orm, and perform fast, sql-like queries including get, where, select, order by, insert, update, and delete.
Upload images with laravel by validating the uploaded image, enforcing mime types and size, then move to public/uploads with a timestamped name and store the filename.
Learn to send emails in laravel using mailable classes, configure mailtrap in the .env file, create a post mail with dynamic author data, and dispatch emails through a blade view.
Discover how to use the Laravel UI package to quickly scaffold authentication features (login, register, password reset, verification), install with composer, generate scaffolding, and compile assets with npm.
Protect routes with the auth middleware in a Laravel PHP app, allowing only authenticated users to create, edit, or delete posts. The video shows guarding routes and redirecting to login.
Display authenticated user info and conditionally show links in blade views, use auth checks to protect controllers, and leverage middleware and controllers to retrieve the user's name.
Learn how route groups organize routes with a shared prefix, middleware, and names, reducing repetition and enabling controller grouping, namespace usage, and clean routing.
Explore the CMS blog project built on Laravel 7 and its old manual phpMyAdmin table creation. Create migrations after models and run php artisan migrate to set up the blog.
Learn to design and code a Laravel 12 cms blog by building an index page with post lists, categories, header navigation, a search feature, and essential pages.
Create a Laravel project, start a local server with php artisan serve, and configure the .env database. Create the MySQL database and test on localhost.
Create an authentication system in Laravel by scaffolding routes, controllers, and views with the UI package, then migrate a users table and enable login and registration.
Integrate your theme by importing CSS, fonts, images, and JavaScript into public/assets, updating layouts to load them, and wiring the navbar with login, register, and user dropdown.
Continue integrating the theme in a Laravel project by updating bootstrap and refining login and register forms, including CSRF, while wiring a shared header, footer, and yield content.
Fetch posts in a Laravel 12 app by creating routes, a posts controller, a post model, and a blade index, then render posts with an index view.
Learn to display blog posts in a Laravel 12 app by wiring asset paths for images, fetching two posts with dynamic data, and routing to a single post page.
Learn to fetch two business category posts and render their images, dates, titles, and descriptions in a Laravel blade layout, with links to single post pages.
Display random culture posts by updating the posts controller to fetch a subset of posts ordered by category and render titles and descriptions with character-limited substrings and images.
Learn to fetch posts for the politics category in a Laravel CMS blog, limit results, and render each post with title, description, image, author, and link.
Learn how to fetch and display travel posts in a Laravel CMS blog, using a travel category, limiting results, and applying order by to create dynamic post listings.
Build a single post page in Laravel by fetching a post by id in the post controller, passing it to a Blade view, and rendering dynamic post data.
Display author information for a post by fetching user data from the user model using the post ID and rendering the author name, bio, and image in a blade view.
Learn to display popular posts by descending id, limit to three, and render them dynamically in a blade view with image assets, title truncation, and links to post details.
Display categories with post counts in Laravel by joining categories and posts and counting posts per category, then implement model and blade rendering.
Build a comment model and a comments table in a Laravel PHP course, with fields body, user_id, user_name, and post_id; fetch and render comments on each post.
Display more posts from the same category on a post page, excluding the current post, limited to four, to show related content and improve navigation.
Explore inserting comments in a Laravel PHP blog by creating a comment form, posting to comment.store, and saving user, post, and comment data via post controller and comment model.
Display the number of comments dynamically on a Laravel blog post, handle comment insertion with a success alert, and refresh the post view to reflect new comments.
Learn how to insert posts by creating a create post blade, wiring routes to the post controller, and building a form with title, image, description, and category.
Learn how to insert a post in a Laravel 12 CMS blog, including creating the post form, handling image uploads to assets/images, and saving title, category, description, and user data.
Finish the post form by dynamically loading categories, selecting a category, and saving the post with a description and image, then verify the post appears under the chosen category.
Enable post deletions in a Laravel blog by adding update and delete buttons, showing delete only to the post owner, with a delete route, and redirecting with a success message.
Update posts in a Laravel cms blog by building an edit form, wiring routes and logic to fetch the post and categories, and pre-filling fields with title, description, and category.
Learn to implement updating posts in a Laravel blog by creating an update post route and controller, wiring a form submission to update data, and securing access with authentication.
Explore validating and cleaning up a Laravel 12 CMS blog by updating blade templates, routing posts, grouping links, and enforcing auth to protect create post pages.
Fix and clean up a Laravel blog: correct post URL generation, format readable dates in Blade, add contact and about pages, wire routes and views, and ensure assets display.
Explore how to display posts filtered by category in a Laravel CMS, connecting categories to posts with routes, controllers, and blade views.
Continue building the category page by adding popular posts and category links, wiring dynamic routes to display posts by category, and debug the undefined constant category.
Are you ready to take your PHP skills to the next level and become a confident Laravel developer? This comprehensive Laravel course is designed for beginners and intermediate developers who want to master the most popular PHP framework while building a real-world project. Unlike other courses that focus solely on theory, here you will learn by doing — step by step, you will create a fully functional CMS blog system complete with posts, categories, comments, and a custom admin panel.
Throughout this course, you will start with the basics of Laravel, understanding its MVC architecture, folder structure, and essential tools like Composer and Artisan CLI. You will learn how to create routes, controllers, and Blade views, and how to pass data from your backend to your frontend seamlessly. You will also get hands-on experience working with Eloquent ORM, connecting models to database tables, and performing queries
The course covers full CRUD operations, form validation, flash messages, and pagination, giving you all the tools to create professional web applications. You will also learn user authentication, protecting routes with middleware, displaying user info in views, and managing access to your admin panel. Additional practical features include file uploading for post images and sending emails using Mailtrap, so you can simulate real-world workflows.
By the end of the course, you won’t just understand Laravel concepts — you will have built a real CMS blog system ready to add to your portfolio. You’ll know how to manage posts, categories, and comments, create a responsive admin dashboard, and implement professional coding practices that make your project maintainable and scalable.
This course is perfect for PHP beginners, self-taught developers, students, or anyone looking to turn their ideas into real web applications. Whether your goal is to land a job as a Laravel developer, freelance, or create your own projects, this course equips you with practical skills and a portfolio-ready project. Start your Laravel journey today and build a CMS blog system from scratch — the right way!