laipower/wp-content/upgrade-temp-backup/plugins/menu-icons/includes/library/functions.php

112 lines
2.1 KiB
PHP
Raw Normal View History

2024-03-28 09:40:10 +00:00
<?php
/**
* Misc. helper functions
*
* @author Dzikri Aziz <kvcrvt@gmail.com>
*/
if ( ! function_exists( 'kucrut_get_array_value_deep' ) ) {
/**
* Get value of a multidimensional array
*
* @since 0.1.0
* @param array $array Haystack
* @param array $keys Needles
* @return mixed
*/
function kucrut_get_array_value_deep( array $array, array $keys ) {
if ( empty( $array ) || empty( $keys ) ) {
return $array;
}
foreach ( $keys as $idx => $key ) {
unset( $keys[ $idx ] );
if ( ! isset( $array[ $key ] ) ) {
return null;
}
if ( ! empty( $keys ) ) {
$array = $array[ $key ];
}
}
if ( ! isset( $array[ $key ] ) ) {
return null;
}
return $array[ $key ];
}
}
if ( ! function_exists( 'kucrut_validate' ) ) {
/**
* Validate settings values
*
* @param array $values Settings values
* @return array
*/
function kucrut_validate( $values, $sanitize_cb = 'wp_kses_data' ) {
foreach ( $values as $key => $value ) {
if ( is_array( $value ) ) {
$values[ $key ] = kucrut_validate( $value );
} else {
$values[ $key ] = call_user_func_array(
$sanitize_cb,
array( $value )
);
}
}
return $values;
}
}
if ( ! function_exists( 'kucrut_get_image_sizes' ) ) {
/**
* Get image sizes
*
* @since 0.9.0
* @access protected
* @return array
*/
function kucrut_get_image_sizes() {
$_sizes = array(
'thumbnail' => __( 'Thumbnail', 'menu-icons' ),
'medium' => __( 'Medium', 'menu-icons' ),
'large' => __( 'Large', 'menu-icons' ),
'full' => __( 'Full Size', 'menu-icons' ),
);
$_sizes = apply_filters( 'image_size_names_choose', $_sizes );
$sizes = array();
foreach ( $_sizes as $value => $label ) {
$sizes[] = array(
'value' => $value,
'label' => $label,
);
}
return $sizes;
}
}
if ( ! function_exists( 'kucrut_get_script_suffix' ) ) {
/**
* Get script & style suffix
*
* When SCRIPT_DEBUG is defined true, this will return '.min'.
*
* @return string
*/
function kucrut_get_script_suffix() {
return ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min';
}
}