定制 gebruederheitz/wp-block-video-overlay 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

gebruederheitz/wp-block-video-overlay

最新稳定版本:v4.0.1

Composer 安装命令:

composer require gebruederheitz/wp-block-video-overlay

包简介

The backend helper for the video overlay block.

README 文档

README

see @gebruederheitz/wp-block-video-overlay

Usage

Registering the block

Given you have already initialized the gebruederheitz/wp-gutenberg-blocks BlockRegistrar somewhere:

\Gebruederheitz\GutenbergBlocks\BlockRegistrar::getInstance();

You will then simply have to instantiate a VideoOverlayBlock:

new \Gebruederheitz\GutenbergBlocks\VideoOverlay\VideoOverlayBlock();

Using consent management functionality

Managing user consent of third-party platforms is quite simple with this block and @gebruederheitz/consent-tools. To provide the editor scripts in @gebruderheitz/wp-block-video-overlay with a list of possible embed types, use the filter hook:

use Gebruederheitz\GutenbergBlocks\VideoOverlay\VideoOverlayBlock;

add_filter(VideoOverlayBlock::HOOK_EMBED_TYPES, function ($embedTypes) use $services {
    $embedTypes[''] = ['displayName' => 'internal'];

        foreach ($services as $serviceId => $service) {
            $embedTypes[$serviceId] = [
                'displayName' => $service['prettyName'] ?? $serviceId,
            ];
        }

        return $embedTypes;
});

Changing the default embed provider

You can simply pass the default service's identifier to the constructor:

use Gebruederheitz\GutenbergBlocks\VideoOverlay\VideoOverlayBlock;

new VideoOverlayBlock();   // Default: 'youtube' service (data-ghct-src and data-ghct-type="youtube")
new VideoOverlayBlock(''); // Default: no consent management (src and no data-ghct-src)
new VideoOverlayBlock('vimeo') // Default: 'vimeo' service (data-ghct-src and data-ghct-type="vimeo")

Enabling video captions

Use the filter hook HOOK_CC_LANG_PREFS to provide an array of available languages on your site to allow editors to input a language preset for Youtube captions:

add_filter(VideoOverlayBlock::HOOK_CC_LANG_PREFS, function ($enabled) {
    /* ... */
    return true;
});

Editors may input a string in the Block Editor representing a language or locale slug (like "en", "en-GB", "en-US", "fr", "de-DE" etc.). The input is sanitized to only allow alphanumeric characters, dashes and underscores.

Defining additional attributes

Yes, there's a filter hook for that:

use Gebruederheitz\GutenbergBlocks\VideoOverlay\VideoOverlayBlock;

add_filter(VideoOverlayBlock::HOOK_ATTRIBUTES, function ($attributes) {
    $attributes['myCustomAttribute'] = [
        'type' => 'string',
        'default' => 'attribute default value',
    ];
    
    return $attributes;
})

Changing the block markup

You can override the template used by the block by simply putting a file into wp-content/themes/{your-theme}/template-parts/blocks/video-overlay.php. The block's attributes are accessible using get_query_var('attributeName'). Take look at the default template as an example.

Alternatively you can filter & override the template partial path and gain even more control:

add_filter(VideoOverlayBlock::HOOK_TEMPLATE_PARTIAL, function (string $partial, string $type, array $attributes) {
    if ($type === 'overlay') {
        return get_theme_file_path('templates/block/video/video-type-overlay.php');
    }
    
    return $partial;
}, 3);

统计信息

  • 总下载量: 1.24k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 2
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0-only
  • 更新时间: 2021-07-08

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固