caouecs / sirtrevorjs
在Laravel项目中使用Sir Trevor JS
Requires
- php: ^8.0
- illuminate/support: ~9.0|~10.0
- laravelcollective/html: ~6.0
Requires (Dev)
- phpunit/phpunit: ^9.0
- dev-master
- 4.3.2
- 4.3.1
- 4.3.0
- 4.2.1
- 4.2.0
- 4.1.5
- 4.1.4
- 4.1.3
- 4.1.2
- 4.1.1
- 4.1.0
- v4.0.x-dev
- 4.0.2
- 4.0.1
- 4.0.0
- v3.0.x-dev
- 3.0.6
- 3.0.5
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.x-dev
- v2.5.x-dev
- 2.5.9
- 2.5.8
- 2.5.7
- 2.5.6
- 2.5.5
- 2.5.4
- 2.5.3
- 2.5.2
- 2.5.1
- 2.5.0
- v2.4.x-dev
- 2.4.8
- 2.4.7
- 2.4.5
- 2.4.4
- 2.4.3
- 2.4.2
- 2.4.1
- 2.4.0
- v2.3.x-dev
- 2.3.6
- 2.3.5
- 2.3.4
- 2.3.3
- 2.3.2
- 2.3.1
- 2.3.0
- v2.2.x-dev
- 2.2.4
- 2.2.3
- 2.2.2
- 2.2.1
- 2.2.0
- 2.1.x-dev
- 2.1.4
- 2.1.3
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.8
- 2.0.7
- 2.0.6
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.4.16
- 1.4.15
- 1.4.14
- 1.4.13
- 1.4.12
- 1.4.11
- 1.4.10
- 1.4.9
- 1.4.8
- 1.4.7
- 1.4.6
- 1.4.5
- 1.4.4
- 1.4.3
- 1.4.2
- 1.4.1
- 1.4.0
- 1.3.1
- 1.3.0
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.11
- 1.1.10
- 1.1.8
- 1.1.5
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- dev-develop
- dev-laravel4
This package is auto-updated.
Last update: 2024-09-07 16:38:06 UTC
README
将工具Sir Trevor JS集成到Laravel 5/6/7/8/9项目中。
安装
此包可通过Packagist
和Composer
获取。
对于PHP 8版本,使用master分支:
"caouecs/sirtrevorjs": "~4.1.0"
对于PHP 7版本,使用v3.0分支:
"caouecs/sirtrevorjs": "~3.0.0"
对于Laravel >= 5.2版本的解析器,使用v2.5分支:
"caouecs/sirtrevorjs": "~2.5.0"
对于Laravel >= 5.1版本的js & amp,使用v2.4分支:
"caouecs/sirtrevorjs": "~2.4.0"
对于Laravel >= 5.1版本的fb articles,使用v2.3分支:
"caouecs/sirtrevorjs": "~2.3.0"
对于Laravel >= 5.1版本的view & amp,使用v2.2分支:
"caouecs/sirtrevorjs": "~2.2.0"
对于Laravel >= 5.1版本的base,使用v2.1分支:
"caouecs/sirtrevorjs": "~2.1.0"
对于Laravel 5.0,使用v2分支:
"caouecs/sirtrevorjs": "~2.0.0"
对于Laravel 4,使用laravel4分支:
"caouecs/sirtrevorjs": "~1.4"
请阅读选定分支中的README.md。
服务提供者
如果您想在项目中直接使用路由、控制器、视图和绑定,请在您的app/config/app.php
中,将"Caouecs\Sirtrevorjs\SirtrevorjsServiceProvider"
添加到提供者列表中。
为了获取推文,该项目使用了thujohn/twitter。请访问项目页面以了解如何安装和配置。
配置文件
接下来,您必须迁移配置
php artisan vendor:publish caouecs/sirtrevorjs
安装后,配置文件位于app/config/packages/caouecs/sirtrevorjs/sir-trevor-js.php。
您可以定义
- 图片上传的路径
- 上传图片的路由
- 推文的路由
- Sir Trevor文件的路径
- 块类型的列表
- 自定义块
- 语言
- Eventable.js和Underscore.js的路径
- 视图
- 块的配置
- soundcloud
- gettyimages
- 等等...
SirTrevorJs类
资源
对于样式表
SirTrevorJs::stylesheets()
对于脚本,在您的Blade文件中
SirTrevorJs::scripts()
图像块的修复
修复图像块在添加新图像时出现问题的函数
string SirTrevorJs::transformText(string $text);
查找第一个图像
使用findImage
方法在文本中获取第一个图像
string SirTrevorJS::findImage(string $text);
返回结果中,您有图像的URL或空字符串。
通过块类型查找元素
使用 find
方法获取指定块类型的所有元素
mixed SirTrevorJS::find(string $text, string $blocktype [, string $output = "json"])
返回结果可以是:
- 数组,如果您将 $output 设置为 "array"
- JSON,如果您将 $output 设置为 "json"
- 如果脚本未找到块类型的实例,则返回 false
控制器
SirTrevorJsable
此特性提出两个要点:
- 上传您想要的位置的图片
- 获取推文
上传图片
本项目提出了一种上传图片的系统,无需配置,只需在配置文件中的 directory_upload
值。
"directory_upload" => "img/uploads"
推文
本项目提出了一种获取推文系统。我使用了 thujohn/twitter 项目。
SirTrevorJsConverter 类
默认情况下,此类需要一个解析器、配置和视图。
您可以使用此类绑定:
app('caouecs.sirtrevorjs.converter')
Html
将 Sir Trevor Js 中的文本转换为 html
string app('caouecs.sirtrevorjs.converter')->toHtml($text)
这些方法返回包含 html 和 js 代码的字符串。
Amp
将 Sir Trevor Js 中的文本转换为 Amp
string app('caouecs.sirtrevorjs.converter')->toAmp($text);
所有模块都有一个 Amp 版本,如果存在等效版本。
此方法返回一个包含 text 和 js 的数组。
Facebook Instant Articles
将 Sir Trevor Js 中的文本转换为 Facebook Instant Articles
string app('caouecs.sirtrevorjs.converter')->toFb($text);
所有模块都有一个 FBArticles 版本,如果存在等效版本。
此方法返回包含 html 和 js 代码的字符串。
添加自定义块
您可以选择在配置文件中添加自定义块,或者通过扩展 SirTrevorJsConverter 类来添加它们。
配置
'customBlocks' => [ 'image_extended' => '\App\SirTrevorConverters\ImageExtendedConverter', ],
SirTrevorConverter
<?php namespace App\SirTrevorConverters; use \Caouecs\Sirtrevorjs\SirTrevorJsConverter; class SirTrevorJsConverterEditor extends SirTrevorJsConverter { /** * Custom blocks. * * @var array */ protected $customBlocks = [ 'gallery' => '{Your namespace}\\Editor\\Converter\\GalleryConverterEditor', 'readmore' => '{Your namespace}\\Editor\\Converter\\ReadMoreConverterEditor', ]; }
您需要在您的服务提供者中调用此类,在注册时:
$this->app->bind('editor.converter', function ($app) {
return new App\SirTrevorConverters\SirTrevorJsConverterEditor(
new LaravelParser(),
config('sir-trevor-js'),
'html'
);
});
模块
目前,代码可以转换以下内容:
- 引用块 / 引用
- embedly 卡
- Facebook 帖子
- Getty Images
- 标题
- iframe
- 图片
- 基本版本
- 带标题的版本
- Issuu
- Sketchfab
- Slideshare
- soundcloud
- Spotify
- 带 Markdown 的文本
- 推文
- 无序列表
- 视频
- AOL
- Canal Plus
- 每日邮报(英国版)
- Dailymotion
- 法国电视
- 全球新闻
- LiveStream
- Metacafe
- Metatube
- MLB
- NBC湾区
- NHL
- Ooyala
- RedTube
- Ustream(直播和录制)
- Veoh
- Vevo
- Vimeo
- Vine
- Wat
- Yahoo
- YouTube
- Zoomin.tv
- 带标题的视频