PluginProbe
Imagify Image Optimization: Optimize Images | Compress & Convert to WebP/AVIF / 1.9.8
Imagify Image Optimization: Optimize Images | Compress & Convert to WebP/AVIF v1.9.8
2.3.4 2.3.3 2.3.2 2.3.1 2.3.0 2.2.9 2.2.8 trunk 1.10 1.3.3 1.3.4 1.3.5 1.3.5.1 1.3.5.2 1.3.6 1.3.6.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.5 All 103 releases
imagify / inc / common / attachments.php

attachments.php in Imagify Image Optimization: Optimize Images | Compress & Convert to WebP/AVIF 1.9.8, at inc/common/attachments.php

70 lines 1.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 defined( 'ABSPATH' ) || die( 'Cheatin’ uh?' );
3
4 add_action( 'delete_attachment', 'imagify_trigger_delete_attachment_hook' );
5 /**
6 * Trigger a common Imagify hook when an attachment is deleted.
7 *
8 * @since 1.9
9 * @author Grégory Viguier
10 *
11 * @param int $post_id Attachment ID.
12 */
13 function imagify_trigger_delete_attachment_hook( $post_id ) {
14 $process = imagify_get_optimization_process( $post_id, 'wp' );
15
16 if ( ! $process->is_valid() ) {
17 return;
18 }
19
20 imagify_trigger_delete_media_hook( $process );
21 }
22
23 add_action( 'imagify_delete_media', 'imagify_cleanup_after_media_deletion' );
24 /**
25 * Delete the backup file and the webp files when an attachement is deleted.
26 *
27 * @since 1.9
28 * @author Grégory Viguier
29 *
30 * @param ProcessInterface $process An optimization process.
31 */
32 function imagify_cleanup_after_media_deletion( $process ) {
33 if ( 'wp' !== $process->get_media()->get_context() ) {
34 return;
35 }
36
37 /**
38 * The optimization data will be automatically deleted by WP (post metas).
39 * Delete the webp versions and the backup file.
40 */
41 $process->delete_webp_files();
42 $process->delete_backup();
43 }
44
45 add_filter( 'ext2type', 'imagify_add_webp_type' );
46 /**
47 * Add the webp extension to wp_get_ext_types().
48 *
49 * @since 1.9
50 * @author Grégory Viguier
51 *
52 * @param array $ext2type Multi-dimensional array with extensions for a default set of file types.
53 * @return array
54 */
55 function imagify_add_webp_type( $ext2type ) {
56 if ( ! in_array( 'webp', $ext2type['image'], true ) ) {
57 $ext2type['image'][] = 'webp';
58 }
59 return $ext2type;
60 }
61
62 /**
63 * Set WP’s "big images threshold" to Imagify’s resizing value.
64 *
65 * @since 1.9.8
66 * @since WP 5.3
67 * @author Grégory Viguier
68 */
69 add_filter( 'big_image_size_threshold', [ imagify_get_context( 'wp' ), 'get_resizing_threshold' ], IMAGIFY_INT_MAX );
70