digimix / wp-svg-upload
为WordPress添加完整的SVG媒体支持。
v1.0.2
2016-05-27 20:13 UTC
Requires
- php: >=5.4.0
- composer/installers: ~1.0
This package is not auto-updated.
Last update: 2024-09-12 19:47:59 UTC
README
使用Composer安装 composer require digimix/wp-svg-upload
手动安装
- 将文件克隆或复制到您的WordPress插件目录
- 从仪表板或使用WP CLI激活插件
一旦插件激活,您就可以开始使用了。您的WordPress媒体库将支持上传SVG文件。
##逻辑分解
-
- 我们需要整个页面,但仅限于后台(因此使用admin_init钩子)
-
- 我们希望捕获所有输出(在admin_init中使用ob_start,因为在那之前不应该有任何echo,我们不希望干扰那些正在做的事情)
-
- 我们希望在关闭时捕获内容,连接所有输出缓冲区,然后过滤
-
- 搜索应存在的占位符并替换文本
- 缺点
-
- 这不是永久解决方案(为了永久修复,WP核心需要可编辑或添加原生过滤)
-
- 有点消耗资源(它锁定在管理端,所以在我看来,谁在乎)
-
- 这只是为了将SVG引入WP核心...幸运的是,在/wp-includes/media-template.php中的查找替换操作很简单(修复它,Mullweng & Co!)
变更...
- 重构了函数声明和调用,使其与较低版本的PHP兼容,尽管相信使用这种版本的人是危险的
- 为filter_mimes函数添加了mime-types参数
- 将其移动到命名空间和类中,使整个系统更少是“胡乱修改”的
- 更新为使用短数组语法(破坏性更改,更新您的PHP或不要使用)
- 删除了一些以前从未注意到的死代码
致谢
- 最初从https://gist.github.com/digimix/01a2e5b38596ea83369a,https://gist.github.com/Lewiscowles1986/44f059876ec205dd4d27分叉而来
- 由Digimix Studios的WordPress开发团队维护