monsieurbiz / sylius-media-manager-plugin
Add a media manager to your Sylius.
Installs: 3 669
Dependents: 1
Suggesters: 0
Security: 0
Stars: 9
Watchers: 3
Forks: 4
Open Issues: 0
Type:sylius-plugin
Requires
- php: ~7.4|~8.0
- ext-json: *
- ext-mbstring: *
- sylius/sylius: >=1.9 <1.13
Requires (Dev)
- behat/behat: ^3.6.1
- behat/mink-selenium2-driver: ^1.4
- dmore/behat-chrome-extension: ^1.3
- dmore/chrome-mink-driver: ^2.7
- doctrine/data-fixtures: ^1.4
- ergebnis/composer-normalize: ^2.5
- friends-of-behat/mink: ^1.8
- friends-of-behat/mink-browserkit-driver: ^1.4
- friends-of-behat/mink-extension: ^2.4
- friends-of-behat/page-object-extension: ^0.3
- friends-of-behat/symfony-extension: ^2.1
- friends-of-behat/variadic-extension: ^1.3
- hwi/oauth-bundle: ^1.1
- lchrusciel/api-test-case: ^5.0
- matthiasnoback/symfony-config-test: ^4.2
- matthiasnoback/symfony-dependency-injection-test: ^4.1
- mikey179/vfsstream: ^1.6
- mockery/mockery: ^1.4
- pamil/prophecy-common: ^0.1
- phpmd/phpmd: @stable
- phpspec/phpspec: ^6.1 || ^7.2
- phpstan/phpstan: ^0.12.57
- phpstan/phpstan-doctrine: ^0.12.19
- phpstan/phpstan-webmozart-assert: ^0.12.7
- phpunit/phpunit: ^8.5
- psalm/plugin-mockery: ^0.3
- psr/event-dispatcher: ^1.0
- sylius-labs/coding-standard: ^3.1
- symfony/browser-kit: ^4.4
- symfony/debug-bundle: ^4.4
- symfony/dotenv: ^4.4
- symfony/flex: ^1.7
- symfony/web-profiler-bundle: ^4.4
This package is auto-updated.
Last update: 2024-03-01 00:21:37 UTC
README
Media Manager for Sylius
Installation
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:
cp -Rv vendor/monsieurbiz/sylius-media-manager-plugin/recipes/1.0/config/ 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.