monsieurbiz / sylius-media-manager-plugin
Add a media manager to your Sylius.
Installs: 18 031
Dependents: 6
Suggesters: 0
Security: 0
Stars: 12
Watchers: 3
Forks: 6
Open Issues: 0
Type:sylius-plugin
Requires
- php: ^8.0
- sylius/sylius: >=1.11 <1.14
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.16
- phpmd/phpmd: ^2.15
- phpspec/phpspec: ^7.0
- phpstan/phpstan: ^1.8.4
- phpstan/phpstan-doctrine: ^1.3.2
- phpstan/phpstan-webmozart-assert: ^1.1
- phpunit/phpunit: ^10.5
This package is auto-updated.
Last update: 2025-01-02 10:53:58 UTC
README
Sylius Media Manager
This plugin adds a media manager to your images, videos and other files type fields in Sylius.
Compatibility
Installation
If you want to use our recipes, you can configure your composer.json by running:
composer config --no-plugins --json extra.symfony.endpoint '["https://api.github.com/repos/monsieurbiz/symfony-recipes/contents/index.json?ref=flex/master","flex://defaults"]'
Install the plugin via composer:
composer require monsieurbiz/sylius-media-manager-plugin
Change your config/bundles.php
file to add this line for the plugin declaration:
<?php return [ //.. MonsieurBiz\SyliusMediaManagerPlugin\MonsieurBizSyliusMediaManagerPlugin::class => ['all' => true], ];
Copy the plugin configuration files in your config
folder: https://github.com/monsieurbiz/symfony-recipes/tree/master/monsieurbiz/sylius-media-manager-plugin/1.0/config
Add these variables to your .env
:
MONSIEURBIZ_SYLIUS_MEDIA_MANAGER_PUBLIC_FOLDER=%kernel.project_dir%/public
MONSIEURBIZ_SYLIUS_MEDIA_MANAGER_ROOT_FOLDER_FROM_PUBLIC=media
MONSIEURBIZ_SYLIUS_MEDIA_MANAGER_MAX_FILE_SIZE=5M
Copy the templates in the folder dist/templates/
to ensure that form fields are rendered correctly:
cp -R vendor/monsieurbiz/sylius-media-manager-plugin/dist/templates/bundles/* templates/bundles/
Copy the form extension if you want to use it on your product images.
cp -R vendor/monsieurbiz/sylius-media-manager-plugin/dist/src/Form/Extension/ProductImageTypeExtension.php src/Form/Extension/ProductImageTypeExtension.php
Else remove the file templates/bundles/SyliusAdminBundle/Form/imagesTheme.html.twig
Use form types
You can check the dist folder to check how the plugin is setup on the test application.
Images
Use MonsieurBiz\SyliusMediaManagerPlugin\Form\Type\ImageType
Use MonsieurBiz\SyliusMediaManagerPlugin\Form\Type\PdfType
Video
Use MonsieurBiz\SyliusMediaManagerPlugin\Form\Type\VideoType
Favicon
Use MonsieurBiz\SyliusMediaManagerPlugin\Form\Type\FaviconType
Audio
Use MonsieurBiz\SyliusMediaManagerPlugin\Form\Type\AudioType
Contributing
You can find a way to run the plugin without effort in the file DEVELOPMENT.md.
Then you can open an issue or a Pull Request if you want! 😘
Thank you!
License
This plugin is completely free and released under the MIT License.