Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

ChrisF79's avatar

General Discussion on what you do when you need a blog component

I'm creating a site now for a company I'll be starting (read: consulting company basically) and I'm torn. My site will have the usual 5 or 6 pages (index, contact, about us, etc.) with call-to-actions. There will be a member's portion of the site where meeting notes will be kept, invoicing will be handled, etc.. Here's where I start to get a bit conflicted. I also want there to be a blog.

I want to use Laravel. The idea of being able to create a couple of Blade templates for the interior pages is great. Creating the back-end section with Laravel just makes sense to me. But, when we throw in the idea of having a blog, I suddenly feel like I need to go the Wordpress route.

I'm thinking out loud here and would really appreciate your input. When you great folks have to create sites with a blog component as well, do you generally go Wordpress? Do you use one of the Laravel blog packages?

I'm sure I sound all over the place here with my thoughts so I'd love to hear yours.

0 likes
2 replies
LaryAI's avatar
Level 58

Great question! This is a common scenario for many Laravel developers who want the flexibility and power of Laravel, but also need a simple, maintainable blog component.

Here are some options you can consider:


1. Build Your Own Blog in Laravel

Since you're already comfortable with Laravel, building a simple blog is very straightforward. You can create a Post model, migration, controller, and Blade views. This gives you full control and keeps everything in one codebase.

Example:

php artisan make:model Post -m
php artisan make:controller PostController --resource

Then, in your migration:

Schema::create('posts', function (Blueprint $table) {
    $table->id();
    $table->string('title');
    $table->text('body');
    $table->timestamps();
});

And in your controller, you can handle CRUD operations. This approach is great for learning and for custom requirements.


2. Use a Laravel Blog Package

There are several Laravel packages that add blog functionality out of the box. Some popular ones:

  • Canvas: A fully-featured blog package for Laravel.
  • Wink: A modern, minimal CMS/blog for Laravel.
  • Akaunting/Blog: Simple blog package.

These packages can save you time and provide admin panels, markdown support, tags, etc.

Example: Installing Canvas

composer require cnvs/canvas
php artisan canvas:install

3. Integrate with WordPress (If You Must)

If you really want the power of WordPress for blogging, you can run WordPress separately (even on a subdomain like blog.yoursite.com) and keep your main site in Laravel. You can also use the WordPress REST API to pull posts into your Laravel site if needed.


My Recommendation

Since your site is mostly custom and you want to use Laravel, building your own blog or using a Laravel package is usually the best way. It keeps your stack simple, your codebase unified, and you avoid the overhead of maintaining two separate systems.

If your blog needs are simple (just posts, maybe categories/tags, comments), building it yourself is a great learning experience and not much work. If you want more features quickly, try Canvas or Wink.


Summary Table:

Option Pros Cons
Build your own Full control, unified codebase More initial setup
Laravel blog package Quick setup, feature-rich Less flexibility
Separate WordPress Familiar, powerful blog features Two systems to maintain

Final Thought:
You don't need to reach for WordPress just because you want a blog. Laravel is more than capable, and there are great packages to help you get started quickly!

Let me know if you want a step-by-step guide for any of these options!

hellolara's avatar

I don't have much advice to offer on the project (I'm still learning myself). What I'm seeing is a question about if it is worth it to create a project when something already exists.

To be honest? My instincts say go for something that is prebuilt. Why? First of all, I don't get the vibe that you're working on consulting for websites, so there is no need to show off your skills. In addition to that, if something breaks you're going to have to invest time in fixing it. Something that will actually take you away from what you're making money off of. Then there's security. Something that already exists is already battle-hardened against some attacks, so some of these problems are already solved before you even know about them.

Having said that, this does not mean that you can't use Laravel at all. A project like a laravel blog exists for sure on the internet and it seems that there is at least 1 Laravel project for invoicing. Try looking around.

Hopefully someone with more experience will show up and will give you a more concrete answer than me. (If you're that person, feel free to tag me in the reply so that I can see it)

Please or to participate in this conversation.