fromholdio / silverstripe-embedfield
一个用于在页面或数据对象中添加oembed对象的表单字段
4.0.2
2024-07-04 16:21 UTC
Requires
- embed/embed: ^4.0.0
- silverstripe/framework: ~5.0
README
此字段设计用于允许用户将oembed对象(例如YouTube视频)附加到页面或数据对象。它将oembed结果信息存储在EmbedObject中,以便从模板(或您想要的位置)轻松访问。
本版本主要基于SilverStripe Embed Field nathancox/embedfield的工作,该项目已经几年没有动静了。
此4.x版本更改了composer包的供应商和名称,以及EmbedObject和EmbedField类的命名空间。
此版本包括样式更新,与Silverstripe v5和Embed/Embed v4的兼容性和增强,以及一些其他小调整。
要求
- SilverStripe 5.0+
安装说明
- 使用composer安装
composer require fromholdio/silverstripe-embedfield
- 访问您的网站.com/dev/build重新构建数据库
使用概述
创建一个到EmbedObject的has_one关系,然后在getCMSFields中创建一个EmbedField
namespace { use SilverStripe\CMS\Model\SiteTree; use Fromholdio\EmbedField\Model\EmbedObject; use Fromholdio\EmbedField\Forms\EmbedField; class Page extends SiteTree { private static $db = []; private static $has_one = [ 'MyVideo' => EmbedObject::class ]; public function getCMSFields() { $fields = parent::getCMSFields(); $fields->addFieldToTab('Root.Main', EmbedField::create('MyVideoID', 'Sidebar video')); return $fields; } } }
在页面模板中,现在可以使用$MyVideo
嵌入视频。