# quickwebp/2.0.0/admin/components/toggle.php

QuickWebP – WebP &amp; AVIF Image Optimizer, Compression &amp; SEO for WordPress, version 2.0.0. 24 lines.

- Page: https://pluginprobe.com/plugins/quickwebp/2.0.0/code/admin/components/toggle.php
- Raw: https://pluginprobe.com/plugins/quickwebp/2.0.0/raw/admin/components/toggle.php
- Modified: 2023-02-10T18:52:10+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/quickwebp/2.0.0/code/admin/components/toggle.php#L10-L20`.

```php
<?php 
/**
 * Toggle component like IOS style for the settings page
 */

$key_option = sanitize_key( $data['name'] );

if( isset( $key_option, $_POST[ $key_option ] ) ) {
    $value_to_save = $_POST[ $key_option ] == '1' ? '1' : '0';
    update_option( $key_option, sanitize_text_field( $_POST[ $key_option ] ) );
}
?>
<label class="switch">
    <input type="hidden" name="<?php echo esc_attr( $key_option ?? '' ); ?>" value="0">
    <input 
        class="<?php echo esc_attr( $data['classes'] ?? ''); ?>"
        type="checkbox" 
        name="<?php echo esc_attr( $key_option ?? '' ); ?>"
        id="<?php echo esc_attr( $key_option ?? '' ); ?>"
        value="1"
        <?php checked( '1', get_option( $key_option, $data['default'] ?? '' ) ); ?>
    >
    <span class="slider round"></span>
</label>
```
