Create New Item
×
Item Type
File
Folder
Item Name
×
Search file in folder and subfolders...
File Manager
/
wp-content
/
plugins
/
advanced-custom-fields
/
includes
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php function acf_filter_attrs($attrs) { $filtered = array_filter($attrs, 'acf_not_empty'); foreach (array('required', 'readonly', 'disabled', 'multiple') as $key) { unset($filtered[$key]); if (!empty($attrs[$key])) { $filtered[$key] = $key; } } return $filtered; } function acf_esc_attrs($attrs) { $html = ''; foreach ($attrs as $k => $v) { if (is_string($v) && $k !== 'value') { $v = trim($v); } elseif (is_bool($v)) { $v = $v ? 1 : 0; } elseif (is_array($v) || is_object($v)) { $v = json_encode($v); } $html .= sprintf(' %s="%s"', esc_attr($k), esc_attr($v)); } return trim($html); } function acf_esc_html($string = '') { return wp_kses((string) $string, 'acf'); } function _acf_kses_allowed_html($tags, $context) { global $allowedposttags; if ($context === 'acf') { return $allowedposttags; } return $tags; } add_filter('wp_kses_allowed_html', '_acf_kses_allowed_html', 0, 2); function acf_hidden_input($attrs = array()) { echo acf_get_hidden_input($attrs); } function acf_get_hidden_input($attrs = array()) { return sprintf('<input type="hidden" %s/>', acf_esc_attrs($attrs)); } function acf_text_input($attrs = array()) { echo acf_get_text_input($attrs); } function acf_get_text_input($attrs = array()) { $attrs = wp_parse_args($attrs, array('type' => 'text')); if (isset($attrs['value']) && is_string($attrs['value'])) { $attrs['value'] = htmlspecialchars($attrs['value']); } return sprintf('<input %s/>', acf_esc_attrs($attrs)); } function acf_file_input($attrs = array()) { echo acf_get_file_input($attrs); } function acf_get_file_input($attrs = array()) { return sprintf('<input type="file" %s/>', acf_esc_attrs($attrs)); } function acf_textarea_input($attrs = array()) { echo acf_get_textarea_input($attrs); } function acf_get_textarea_input($attrs = array()) { $value = ''; if (isset($attrs['value'])) { $value = $attrs['value']; unset($attrs['value']); } return sprintf('<textarea %s>%s</textarea>', acf_esc_attrs($attrs), esc_textarea($value)); } function acf_checkbox_input($attrs = array()) { echo acf_get_checkbox_input($attrs); } function acf_get_checkbox_input($attrs = array()) { $attrs = wp_parse_args($attrs, array('type' => 'checkbox')); $label = ''; if (isset($attrs['label'])) { $label = $attrs['label']; unset($attrs['label']); } $checked = isset($attrs['checked']); return '<label' . ($checked ? ' class="selected"' : '') . '><input ' . acf_esc_attr($attrs) . '/> ' . acf_esc_html($label) . '</label>'; } function acf_radio_input($attrs = array()) { echo acf_get_radio_input($attrs); } function acf_get_radio_input($attrs = array()) { $attrs['type'] = 'radio'; return acf_get_checkbox_input($attrs); } function acf_select_input($attrs = array()) { echo acf_get_select_input($attrs); } function acf_get_select_input($attrs = array()) { $value = (array) acf_extract_var($attrs, 'value'); $choices = (array) acf_extract_var($attrs, 'choices'); return sprintf('<select %s>%s</select>', acf_esc_attrs($attrs), acf_walk_select_input($choices, $value)); } function acf_walk_select_input($choices = array(), $values = array(), $depth = 0) { $html = ''; if ($depth == 0) { $values = array_map('esc_attr', $values); } if ($choices) { foreach ($choices as $value => $label) { if (is_array($label)) { $html .= sprintf('<optgroup label="%s">%s</optgroup>', esc_attr($value), acf_walk_select_input($label, $values, $depth + 1)); } else { $attrs = array('value' => $value); $pos = array_search(esc_attr($value), $values); if ($pos !== false) { $attrs['selected'] = 'selected'; $attrs['data-i'] = $pos; } $html .= sprintf('<option %s>%s</option>', acf_esc_attr($attrs), esc_html($label)); } } } return $html; } function acf_clean_atts($attrs) { return acf_filter_attrs($attrs); } function acf_esc_atts($attrs) { return acf_esc_attrs($attrs); } function acf_esc_attr($attrs) { return acf_esc_attrs($attrs); } function acf_esc_attr_e($attrs) { echo acf_esc_attrs($attrs); } function acf_esc_atts_e($attrs) { echo acf_esc_attrs($attrs); }