PluginProbe
Depicter — Popup & Slider Builder / 1.3.3
Depicter — Popup & Slider Builder v1.3.3
4.8.1 trunk 1.0.0 1.1.0 1.1.2 1.1.4 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.3.0 1.3.1 1.3.2 1.3.3 1.3.5 1.3.8 1.5.0 1.5.1 1.5.2 1.5.5 1.6.0 1.6.1 1.6.2 1.7.0 All 76 releases
depicter / app / src / WordPress / SVGServiceProvider.php

SVGServiceProvider.php in Depicter — Popup & Slider Builder 1.3.3, at app/src/WordPress/SVGServiceProvider.php

58 lines 1.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace Depicter\WordPress;
3
4 use WPEmerge\ServiceProviders\ServiceProviderInterface;
5
6 class SVGServiceProvider implements ServiceProviderInterface
7 {
8
9 /**
10 * {@inheritDoc}
11 */
12 public function register( $container ) {
13 // Nothing to register.
14 }
15
16 /**
17 * {@inheritDoc}
18 */
19 public function bootstrap( $container ) {
20 // Enable SVG support
21 add_filter( 'wp_check_filetype_and_ext', [ $this, 'checkFileType' ], 10, 4 );
22 add_filter( 'upload_mimes', [ $this, 'addSvgMimeType' ] );
23 }
24
25 /**
26 * Allow SVG
27 *
28 * @param $data
29 * @param $file
30 * @param $filename
31 * @param $mimes
32 *
33 * @return array
34 */
35 public function checkFileType( $data, $file, $filename, $mimes ) {
36 $fileType = wp_check_filetype( $filename, $mimes );
37
38 return [
39 'ext' => $fileType['ext'],
40 'type' => $fileType['type'],
41 'proper_filename' => $data['proper_filename']
42 ];
43 }
44
45 /**
46 * Add SVG mime type
47 *
48 * @param $mimes
49 *
50 * @return mixed
51 */
52 public function addSvgMimeType( $mimes ){
53 $mimes['svg'] = 'image/svg+xml';
54 return $mimes;
55 }
56
57 }
58