Files
gkachele-saas/gk-assets/themes/abiz/core/customizer/abiz-customize-sanitization.php

61 lines
1.6 KiB
PHP

<?php
// Checkbox sanitization
function abiz_sanitize_checkbox( $checked ) {
// Boolean check.
return ( ( isset( $checked ) && true == $checked ) ? true : false );
}
// HTML sanitization
function abiz_sanitize_html( $html ) {
return wp_kses_post( force_balance_tags( $html ) );
}
// Number sanitization
function abiz_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 );
}
// Select sanitization callback example.
function abiz_sanitize_select( $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 );
}
// URL sanitization
function abiz_sanitize_url( $url ) {
return esc_url_raw( $url );
}
// Sanitization Text
function abiz_sanitize_text( $text ) {
return wp_filter_post_kses( $text );
}
// Sanitize Sortable control.
function abiz_sanitize_sortable( $val, $setting ) {
if ( is_string( $val ) || is_numeric( $val ) ) {
return array(
esc_attr( $val ),
);
}
$sanitized_value = array();
foreach ( $val as $item ) {
if ( isset( $setting->manager->get_control( $setting->id )->choices[ $item ] ) ) {
$sanitized_value[] = esc_attr( $item );
}
}
return $sanitized_value;
}