oont-contents/plugins/wp-rocket/views/settings/fields/select.php
2025-02-08 15:10:23 +01:00

43 lines
1.6 KiB
PHP

<?php
/**
* Select field template.
*
* @since 3.0
*
* @param array $data {
* Checkbox Field arguments.
*
* @type string $id Field identifier.
* @type string $label Field label.
* @type string $container_class Field container class.
* @type string $value Field value.
* @type string $description Field description.
* @type array $choices {
* Option choices.
*
* @type string $value Option value.
* @type string $label Option label.
* }
* }
*/
defined( 'ABSPATH' ) || exit;
?>
<div class="wpr-field wpr-field--select <?php echo esc_attr( $data['container_class'] ); ?>"<?php echo $data['parent']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- $data['parent'] escaped with esc_attr. ?>>
<div class="wpr-select">
<select id="<?php echo esc_attr( $data['id'] ); ?>" name="wp_rocket_settings[<?php echo esc_attr( $data['id'] ); ?>]">
<?php foreach ( $data['choices'] as $value => $label ) : // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound ?>
<option value="<?php echo esc_attr( $value ); ?>" <?php selected( $value, $data['value'] ); ?>><?php echo esc_html( $label ); ?></option>
<?php endforeach; ?>
</select>
<label for="<?php echo esc_attr( $data['id'] ); ?>"><?php echo esc_html( $data['label'] ); ?></label>
</div>
<?php if ( ! empty( $data['description'] ) ) : ?>
<div class="wpr-field-description">
<?php echo $data['description']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Dynamic content is properly escaped in the view. ?>
</div>
<?php endif; ?>
</div>