dev-dev
dev-devMedia plugin for CakePHP 3
The Requires
- php >=5.4.0
The Development Requires
plugin cakephp media
dev-master
9999999-devMedia plugin for CakePHP 3
The Requires
- php >=5.4.0
The Development Requires
plugin cakephp media
Wallogit.com
2017 © Pedro Peláez
Media plugin for CakePHP 3
The aim of this plugin is to give you the ability to create and associate any kind of medias in your application. This plugin is the adapation from Grafikart's Media Plugin for CakePHP 3., (*2)
composer require romano83/cakephp3-media
config\schema\medias.sql in your databaseIn your config\bootstrap.php file, add this line, (*3)
Plugin::load('Media', ['bootstrap' => false, 'routes' => true]);
By default, the plugin is blocked for everyone. To set proper permissions, you can implement canUploadMedia() method in your YourApp\AppController.
For exemple :, (*4)
public function canUploadMedias($model, $id){
if($model === 'YourApp\Model\Table\UsersTable' && $id == $this->Auth->user('id')){
return true; // Everyone can upload medias for their own records
}
return $this->Auth->user('role') == 'admin'; // Admins have all rights
}
To use this plugin, you must load the MediaBehavior in your tables. Form instance, if you want to manage medias for your posts :, (*5)
addBehavior(
'Media.Media', [
'path' => 'img/upload/%y/%m/%f', // default upload path relative to webroot folder (see below for path parameters)
'extensions' => ['jpg', 'png'], // array of authorized extensions (lowercase)
'limit' => 0, // limit number of upload file. Default: 0 (no limit)
'max_width' => 0, // maximum authorized width for uploaded pictures. Default: 0 (no limitation)
'max_height' => 0, // maximum authorized height for uploaded pictures. Default: 0 (no limitation)
'size' => 0 // maximum autorized size for uploaded pictures (in kb). Default: 0 (no limitation)
]
);
}
}
```
For the path option, you have numerous parameters :
* %y Year
* %m Month
* %f Sluggified filename
* %id Media Id
* %cid Media Id /100
* %mid Media Id /1000
### Helper
In order to add media upload and edit capabilities in your views, you can use `MediaHelper`.
To do so, add in your `AppController`
```php
loadHelper( 'Media.Media' );
}
}
```
For example, you can add an iframe to manage medias:
```php
= $this->Media->iframe('Model', 'ID'); ?>
Or you can add text editor (tinymce for instance) inside form :, (*6)
= $this->Form->create(); ?> = $this->Media->tinymce($fieldname, 'Model', 'Id', array $options); ?> = $this->Form->end(); ?>
This method take the same array $options than native FormInput helper., (*7)
If you want to add thumb for your posts, you must add media_id field in your 'Model' database table., (*8)
In order to upload pictures, you should implement draft system for your model., (*9)
dev branch.Media plugin for CakePHP 3
plugin cakephp media
Media plugin for CakePHP 3
plugin cakephp media