File "class-acf-field.php"
Full path: /home/kosmetik/public_html/wp-content/plugins/advanced-custom-fields/includes/fields/class-acf-field.php
File
size: 4.19 B
MIME-type: text/x-php
Charset: utf-8
Download Open Edit Advanced Editor Back
<?php
if (!class_exists('acf_field')) {
class acf_field
{
var $name = '', $label = '', $category = 'basic', $defaults = array(), $l10n = array(), $public = true;
function __construct()
{
$this->initialize();
acf_register_field_type_info(array('label' => $this->label, 'name' => $this->name, 'category' => $this->category, 'public' => $this->public));
$this->add_field_filter('acf/load_value', array($this, 'load_value'), 10, 3);
$this->add_field_filter('acf/update_value', array($this, 'update_value'), 10, 3);
$this->add_field_filter('acf/format_value', array($this, 'format_value'), 10, 3);
$this->add_field_filter('acf/validate_value', array($this, 'validate_value'), 10, 4);
$this->add_field_action('acf/delete_value', array($this, 'delete_value'), 10, 3);
$this->add_field_filter('acf/validate_field', array($this, 'validate_field'), 10, 1);
$this->add_field_filter('acf/load_field', array($this, 'load_field'), 10, 1);
$this->add_field_filter('acf/update_field', array($this, 'update_field'), 10, 1);
$this->add_field_filter('acf/duplicate_field', array($this, 'duplicate_field'), 10, 1);
$this->add_field_action('acf/delete_field', array($this, 'delete_field'), 10, 1);
$this->add_field_action('acf/render_field', array($this, 'render_field'), 9, 1);
$this->add_field_action('acf/render_field_settings', array($this, 'render_field_settings'), 9, 1);
$this->add_field_filter('acf/prepare_field', array($this, 'prepare_field'), 10, 1);
$this->add_field_filter('acf/translate_field', array($this, 'translate_field'), 10, 1);
$this->add_action('acf/input/admin_enqueue_scripts', array($this, 'input_admin_enqueue_scripts'), 10, 0);
$this->add_action('acf/input/admin_head', array($this, 'input_admin_head'), 10, 0);
$this->add_action('acf/input/form_data', array($this, 'input_form_data'), 10, 1);
$this->add_filter('acf/input/admin_l10n', array($this, 'input_admin_l10n'), 10, 1);
$this->add_action('acf/input/admin_footer', array($this, 'input_admin_footer'), 10, 1);
$this->add_action('acf/field_group/admin_enqueue_scripts', array($this, 'field_group_admin_enqueue_scripts'), 10, 0);
$this->add_action('acf/field_group/admin_head', array($this, 'field_group_admin_head'), 10, 0);
$this->add_action('acf/field_group/admin_footer', array($this, 'field_group_admin_footer'), 10, 0);
}
function initialize()
{
}
function add_filter($tag = '', $function_to_add = '', $priority = 10, $accepted_args = 1)
{
if (!is_callable($function_to_add)) {
return;
}
add_filter($tag, $function_to_add, $priority, $accepted_args);
}
function add_field_filter($tag = '', $function_to_add = '', $priority = 10, $accepted_args = 1)
{
$tag .= '/type=' . $this->name;
$this->add_filter($tag, $function_to_add, $priority, $accepted_args);
}
function add_action($tag = '', $function_to_add = '', $priority = 10, $accepted_args = 1)
{
if (!is_callable($function_to_add)) {
return;
}
add_action($tag, $function_to_add, $priority, $accepted_args);
}
function add_field_action($tag = '', $function_to_add = '', $priority = 10, $accepted_args = 1)
{
$tag .= '/type=' . $this->name;
$this->add_action($tag, $function_to_add, $priority, $accepted_args);
}
function validate_field($field)
{
if (!is_array($this->defaults)) {
return $field;
}
foreach ($this->defaults as $k => $v) {
if (!isset($field[$k])) {
$field[$k] = $v;
}
}
return $field;
}
function input_admin_l10n($l10n)
{
if (empty($this->l10n)) {
return $l10n;
}
$l10n[$this->name] = $this->l10n;
return $l10n;
}
}
}