dynamic/silverstripe-products

在 SilverStripe 中创建产品目录

安装: 1,570

依赖项: 1

建议者: 0

安全: 0

星级: 2

关注者: 7

分支: 4

开放问题: 1

类型:silverstripe-vendormodule

2.0.0-beta1 2023-10-30 22:16 UTC

This package is auto-updated.

Last update: 2024-09-22 22:04:13 UTC


README

一个模块,可以在您的网站上显示产品目录。

Build Status Scrutinizer Code Quality Build Status codecov

Latest Stable Version Total Downloads Latest Unstable Version License

概述

产品作为网站上的页面创建,可以通过产品类别进行组织。产品文件,如包含的折页,可以附加到产品上。通过产品文件集合页面,您可以显示系统内所有折页的可过滤列表。

以下包含创建自定义产品文件的说明。

要求

  • 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',
	]
];

许可证

许可证

维护者

错误追踪器

错误在该存储库的问题部分进行跟踪。在提交问题之前,请仔细阅读现有的问题,以确保您的问题独特。

如果问题看起来像是新的错误

  • 创建一个新的问题
  • 描述重现问题的步骤和预期结果。单元测试、屏幕截图和屏幕录像可能会有所帮助。
  • 尽可能详细地描述您的环境:SilverStripe 版本、浏览器、PHP 版本、操作系统、任何安装的 SilverStripe 模块。

请直接向模块维护者报告安全问题。请勿在错误追踪器中提交安全问题。

开发和贡献

如果您想对该模块做出贡献,请确保您发起一个拉取请求并与模块维护者进行讨论。