ozankurt / laravel-blog
Ready to use blog module for laravel.
0.1.0
2024-12-25 15:17 UTC
Requires
- spatie/laravel-medialibrary: ^11.11
- spatie/laravel-sluggable: ^3.7
Requires (Dev)
- orchestra/testbench: ^9.8
Suggests
- spatie/laravel-tags: To tag posts.
README
Laravel Blog is a package that provides a simple blog system for Laravel applications.
Features
- Categories
- Posts
- Comments
- Media Types (Text, Single Image, Multiple Image, Video)
- Video Embedding (YouTube, Vimeo, DailyMotion)
External Requirements
This package requires 2 external packages for its functionality.
External Suggestions
You can use the following packages to enhance the functionality of the blog system.
Installation
You can install the package via composer:
composer require ozankurt/laravel-blog
Publish the package assets:
php artisan vendor:publish --provider="Ozankurt\Blog\BlogServiceProvider"
Run the migrations:
php artisan migrate
Usage
Modify the config/blog.php
configuration file to customize the package settings.
return [ 'database' => [ 'connection' = env('DB_CONNECTION', 'mysql'), 'table_prefix' => 'blog_', ], 'models' => [ 'user' => App\Models\User::class, /** If you want to use your own models, you can extend the package models. */ 'category' => OzanKurt\Blog\Category::class, 'comment' => OzanKurt\Blog\Comment::class, 'post' => OzanKurt\Blog\Post::class, ], 'media' => [ 'disk' => 'public', ], 'video_thumbnail_qualities' => [ /** Vimeo options: 'thumbnail_small', 'thumbnail_medium', 'thumbnail_large' */ 'vimeo' => 'thumbnail_medium', /** YouTube options: '0', '1', '2', '3', 'default', 'hqdefault', 'mqdefault', 'sddefault', 'maxresdefault' */ 'youtube' => 'default', ], 'caching' => [ 'enabled' => false, 'duration' => 15, ], ];
API
Category
Post
Posts have a type_id
attribute so that the users can choose between:
- Text Post
- Single Image Post
- Multiple Image Post
- Video Post
Videos support 3 different providers:
- YouTube
- Vimeo
- DailyMotion