toastnz/youtubefield

用于选择YouTube视频的字段。接受多种URL格式作为输入,并存储YouTube ID。

安装数: 7,843

依赖者: 0

建议者: 0

安全: 0

星标: 1

关注者: 1

分支: 15

类型:silverstripe-vendormodule

3.0.0 2023-10-23 20:06 UTC

This package is auto-updated.

Last update: 2024-09-23 23:52:37 UTC


README

简介

此SilverStripe模块提供用于CMS/ModelAdmin的YouTube字段。它接受各种常见的YouTube URL格式作为输入,并将它们转换为11字符的YouTube ID存储在数据库中。

一旦保存了有效的ID,字段将显示视频缩略图和标题。

可选地,您可以提供一个YouTube v3 API的密钥,用于显示额外的信息(时长和观看次数),并提供即时信息(而不是在保存后)。

Screenshot of Video Information

要求

  • silverstripe/framework ^4.0 (查看 1 分支以了解SilverStripe 3兼容性)

基本字段

mysite/code/Page.php

<?php

use EdgarIndustries\YouTubeField\YouTubeField;

class Page extends SiteTree
{

    private static $db = array(
        'VideoID' => 'Varchar(11)',
    );
    
    public function getCMSFields() {
        $fields = parent::getCMSFields();
        $fields->addFieldToTab('Root.Main', new YouTubeField('VideoID', 'YouTube Video'));
        return $fields;
    }
    
}

mysite/_config/config.yml

EdgarIndustries\YouTubeField\YouTubeField:
  api_key: YOUR_API_KEY

URL解析器

存在一个静态函数可以被调用(无需使用YouTubeField),用于简单地从支持的URL格式中检索YouTube ID。

YouTubeField::url_parser($url);