dynamic / silverstripe-products
在 SilverStripe 中创建产品目录
2.0.0-beta1
2023-10-30 22:16 UTC
Requires
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-22 22:04:13 UTC
README
一个模块,可以在您的网站上显示产品目录。
概述
产品作为网站上的页面创建,可以通过产品类别进行组织。产品文件,如包含的折页,可以附加到产品上。通过产品文件集合页面,您可以显示系统内所有折页的可过滤列表。
以下包含创建自定义产品文件的说明。
要求
- SilverStripe ^4.0
- dynamic/silverstripe-collection ^2.0
- symbiote/silverstripe-gridfieldextensions ^3.0
- bummzack/sortablefile ^2.0
安装
composer require dynamic/silverstripe-products
使用
升级到 1.1.0
从 1.0.x 升级到 1.1.0 将需要运行以下任务,因为产品图像上传现在支持 mp4
视频文件。
sake dev/tasks/product-image-relation-update-task
相关产品
如果您想在产品页面上添加包含相关产品的功能,可以将 RelatedProductsDataExtension
应用到 Product
。
在 config.yml
Dynamic\Products\Page\Product:
extensions:
- Dynamic\Products\Extension\RelatedProductsDataExtension
可以在您网站上的任何页面类型中添加相关产品,例如 BlogPost
。
自定义产品文件
SilverStripe 产品包括一个折页对象,它是可以分配给产品的产品文件的一个示例。您可以按照以下示例创建额外的产品文件类型
use Dynamic\Products\Extension\ProductFileDataExtension;
class SpecSheet extends ProductFile
{
private static $table_name = 'SpecSheet';
private static $extensions = [ProductFileDataExtension::class];
}
然后,创建一个数据扩展并将其应用到 Product
。包括对新产品文件的关联
private static $many_many = [
'SpecSheets' => SpecSheet::class,
];
private static $many_many_extraFields = [
'SpecSheets' => [
'SortOrder' => 'Int',
]
];
许可证
见 许可证
维护者
- Dynamic dev@dynamicagency.com
错误追踪器
错误在该存储库的问题部分进行跟踪。在提交问题之前,请仔细阅读现有的问题,以确保您的问题独特。
如果问题看起来像是新的错误
- 创建一个新的问题
- 描述重现问题的步骤和预期结果。单元测试、屏幕截图和屏幕录像可能会有所帮助。
- 尽可能详细地描述您的环境:SilverStripe 版本、浏览器、PHP 版本、操作系统、任何安装的 SilverStripe 模块。
请直接向模块维护者报告安全问题。请勿在错误追踪器中提交安全问题。
开发和贡献
如果您想对该模块做出贡献,请确保您发起一个拉取请求并与模块维护者进行讨论。