asdoria / sylius-product-document-plugin
Asdoria 产品文档
0.1.3
2023-03-14 10:24 UTC
Requires
- php: ^7.4 | ^8.0
- sylius/sylius: ^1.12
Requires (Dev)
- phpunit/phpunit: ^9.5
README
Asdoria 产品文档插件
一个用于创建、分组和将文档与产品关联的插件
功能
- 创建文档类型
- 从产品配置页面轻松自定义要显示的文档
- 文档将在产品商店页面自动显示并可下载
安装
-
运行
composer require asdoria/sylius-product-document-plugin
-
在
config/bundles.php
中添加捆绑包。您必须将其放在SyliusGridBundle
之上
Asdoria\SyliusProductDocumentPlugin\AsdoriaSyliusProductDocumentPlugin::class => ['all' => true], [...] Sylius\Bundle\GridBundle\SyliusGridBundle::class => ['all' => true],
- 在
config/routes.yaml
中导入路由
asdoria_product_document: resource: "@AsdoriaSyliusProductDocumentPlugin/Resources/config/routing.yaml"
- 在
config/packages/_sylius.yaml
中导入配置
imports: - { resource: "@AsdoriaSyliusProductDocumentPlugin/Resources/config/app/config.yaml"}
- 在
src/Entity/Product/Product.php
中。导入以下类、特性和方法。
use Asdoria\SyliusProductDocumentPlugin\Model\Aware\ProductDocumentsAwareInterface; use Asdoria\SyliusProductDocumentPlugin\Model\ProductDocumentInterface; use Asdoria\SyliusProductDocumentPlugin\Traits\ProductDocumentsTrait; use Sylius\Component\Product\Model\ProductTranslationInterface; class Product extends BaseProduct implements ProductDocumentsAwareInterface { use ProductDocumentsTrait; public function __construct() { parent::__construct(); $this->initializeProductDocumentsCollection(); } /** * @param ProductDocumentInterface $productDocument */ public function addProductDocument(ProductDocumentInterface $productDocument): void { if (!$this->hasProductDocument($productDocument)) { $productDocument->setProduct($this); $this->productDocuments->add($productDocument); } } /** * @param ProductDocumentInterface $productDocument */ public function removeProductDocument(ProductDocumentInterface $productDocument): void { if ($this->hasProductDocument($productDocument)) { $productDocument->setProduct(null); $this->productDocuments->removeElement($productDocument); } } }
-
运行
php bin/console do:mi:mi
更新数据库模式 -
Gaufrette 已不再被 Sylius 使用,取而代之的是 Flysystem。如果您想在项目中使用 Gaufrette,您需要在您的
config/packages/_sylius.yaml
文件中设置。asdoria_sylius_product_document: filesystem: adapter: gaufrette
演示
您可以通过以下链接查看用户的示例结果: 这里。
如果您想尝试创建文档,请访问 管理员认证页面 并使用以下凭据连接:
登录: asdoria
密码: asdoria
然后转到 后台办公室中的“文档类型” 并遵循以下使用说明。
请注意,我们为 Sylius 开发了其他几个开源插件,其演示和文档列在 以下页面 上。
使用方法
- 在后台办公室中,在
目录
下,进入文档类型
。使用唯一代码创建文档类型。 - 转到产品编辑页面,然后在侧边栏中点击
文档
选项卡。在这里,您可以添加文档类型,然后上传要显示的每个文档。