PluginProbe
QuickWebP – WebP & AVIF Image Optimizer, Compression & SEO for WordPress / 4.1.1
QuickWebP – WebP & AVIF Image Optimizer, Compression & SEO for WordPress v4.1.1
4.1.1 4.1.0 4.0.1 4.0.0 3.3.1 3.3.0 trunk 1.0.0 2.0.0 2.1.0 3.0.0 3.1.0 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8
← All changes | admin/components/select.php +26 -11 3.2.64.1.1 View file →
@@ -1,35 +1,50 @@
1 1 <?php
2 +if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3 +
2 4 /**
3 5 * Select component for the settings page
4 6 */
5 7
6 -$key_option = sanitize_key( $data['name'] );
8 +$quickwebp_key_option = sanitize_key( $data['name'] );
7 9
8 -if( isset( $key_option, $_POST[ $key_option ] ) ) {
9 - update_option( $key_option, sanitize_text_field( $_POST[ $key_option ] ) );
10 +//phpcs:ignore WordPress.Security.NonceVerification.Missing
11 +if( isset( $quickwebp_key_option, $_POST[ $quickwebp_key_option ] ) ) {
12 + //phpcs:ignore WordPress.Security.NonceVerification.Missing
13 + $quickwebp_value_to_save = sanitize_text_field( wp_unslash( $_POST[ $quickwebp_key_option ] ) );
14 + $quickwebp_allowed_values = array();
15 +
16 + if ( isset( $data['options'] ) && is_array( $data['options'] ) ) {
17 + foreach ( $data['options'] as $quickwebp_option ) {
18 + $quickwebp_allowed_values[] = isset( $quickwebp_option['value'] ) ? (string) $quickwebp_option['value'] : '';
19 + }
20 + }
21 +
22 + if ( in_array( $quickwebp_value_to_save, $quickwebp_allowed_values, true ) ) {
23 + update_option( $quickwebp_key_option, $quickwebp_value_to_save );
24 + }
10 25 }
11 26 if(isset($data['options']) && is_array($data['options'])) {
12 27 ?>
13 28 <select
14 - name="<?php echo esc_attr( $key_option ?? '' ); ?>"
15 - id="<?php echo esc_attr( $key_option ?? '' ); ?>"
29 + name="<?php echo esc_attr( $quickwebp_key_option ?? '' ); ?>"
30 + id="<?php echo esc_attr( $quickwebp_key_option ?? '' ); ?>"
16 31 >
17 32 <?php if( isset( $data['placeholder'] ) ): ?>
18 33 <option value="">
19 - <?php echo esc_html( $data['placeholder'] ?? __( 'Select an option', QUICKWEBP_TEXT_DOMAIN ) ); ?>
34 + <?php echo esc_html( $data['placeholder'] ?? __( 'Select an option', 'quickwebp' ) ); ?>
20 35 </option>
21 36 <?php endif; ?>
22 37
23 38 <?php
24 - $option_saved = get_option( $key_option, $data['default'] );
25 - foreach( $data['options'] as $option ) {
39 + $quickwebp_option_saved = get_option( $quickwebp_key_option, $data['default'] );
40 + foreach( $data['options'] as $quickwebp_option ) {
26 41 ?>
27 42 <option
28 - value="<?php echo esc_attr( $option['value'] ?? '' ); ?>"
29 - <?php selected( $option['value'], $option_saved ); ?>
43 + value="<?php echo esc_attr( $quickwebp_option['value'] ?? '' ); ?>"
44 + <?php selected( $quickwebp_option['value'], $quickwebp_option_saved ); ?>
30 45 >
31 - <?php echo esc_html( $option['label'] ?? '' ); ?>
46 + <?php echo esc_html( $quickwebp_option['label'] ?? '' ); ?>
32 47 </option>
33 48 <?php
34 49 }
35 50 ?>