42 lines
1.3 KiB
PHP
42 lines
1.3 KiB
PHP
|
|
<?php
|
||
|
|
/**
|
||
|
|
* Rara Business Theme Sanitization Functions
|
||
|
|
*
|
||
|
|
* @link https://github.com/WPTRT/code-examples/blob/master/customizer/sanitization-callbacks.php
|
||
|
|
* @package Rara_Business
|
||
|
|
*/
|
||
|
|
|
||
|
|
|
||
|
|
function rara_business_sanitize_checkbox( $checked ){
|
||
|
|
// Boolean check.
|
||
|
|
return ( ( isset( $checked ) && true == $checked ) ? true : false );
|
||
|
|
}
|
||
|
|
|
||
|
|
function rara_business_sanitize_select( $value ){
|
||
|
|
|
||
|
|
if ( is_array( $value ) ) {
|
||
|
|
foreach ( $value as $key => $subvalue ) {
|
||
|
|
$value[ $key ] = sanitize_text_field( $subvalue );
|
||
|
|
}
|
||
|
|
return $value;
|
||
|
|
}
|
||
|
|
return sanitize_text_field( $value );
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
function rara_business_sanitize_radio( $input, $setting ) {
|
||
|
|
// Ensure input is a slug.
|
||
|
|
$input = sanitize_key( $input );
|
||
|
|
// Get list of choices from the control associated with the setting.
|
||
|
|
$choices = $setting->manager->get_control( $setting->id )->choices;
|
||
|
|
// If the input is a valid key, return it; otherwise, return the default.
|
||
|
|
return ( array_key_exists( $input, $choices ) ? $input : $setting->default );
|
||
|
|
}
|
||
|
|
|
||
|
|
function rara_business_sanitize_number_absint( $number, $setting ) {
|
||
|
|
// Ensure $number is an absolute integer (whole number, zero or greater).
|
||
|
|
$number = absint( $number );
|
||
|
|
|
||
|
|
// If the input is an absolute integer, return it; otherwise, return the default
|
||
|
|
return ( $number ? $number : $setting->default );
|
||
|
|
}
|