Laravel Cloudinary filesystem driver.
Laravel | Package |
---|---|
11.x.x | 5.x |
10.x.x | 4.x |
9.x.x | 3.x |
8.x.x | 2.x |
7.x.x | 2.x |
6.x.x | 2.x |
Requires this package with composer via command:
composer require yoelpc4/laravel-cloudinary
Register your Cloudinary account details here. Then add these lines to your .env.
FILESYSTEM_DISK=cloudinary
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=
CLOUDINARY_CLOUD_NAME=
CLOUDINARY_SECURE=true
Register cloudinary driver configuration in config/filesystems.php
at disks section as follows
'cloudinary' => [
'driver' => 'cloudinary',
'api_key' => env('CLOUDINARY_API_KEY'),
'api_secret' => env('CLOUDINARY_API_SECRET'),
'cloud_name' => env('CLOUDINARY_CLOUD_NAME'),
'secure' => env('CLOUDINARY_SECURE', true),
'resource_types' => [
'image' => [
'png',
'jpeg',
'jpg',
],
'video' => [
'mp4',
'avi',
'mp3',
'flac',
],
'raw' => [
'pdf',
'xlsx',
'csv',
'txt',
],
],
],
The secure option is applied when generating url from storage, when secure = true
will use https
otherwise secure = false
will use http
as protocol.
The resource_types option is applied when generating resource type & public id whenever we call storage method such as
write, writeStream, url, has, etc. Registers the appropriate file extensions according to cloudinary resource type e.g:
png in image, mp4 in video, xlsx in raw, for audio files registers in video. The default resource type is image
,
visit image upload api reference for more information.
To use pre-defined filename as public ID when uploading to cloudinary, you need to tweak some configuration
in Settings -> Upload -> Upload presets
as follows:
-
Click edit button on signed mode preset, initial preset is
ml_default
you can update it. -
Turn on
Use filename or externally defined public ID
to using the pre-defined filename instead of random characters. -
Turn off
Unique filename
to prevent cloudinary from adding random characters at the end of filename. -
Click
Save
and you're good to go.
The Laravel Cloudinary is open-sourced software licensed under the MIT license.