public function get_field($field, $field_group = null)
{
if (is_a($field, 'CMB2_Field')) {
return $field;
}
$field_id = is_string($field) ? $field : $field['id'];
$parent_field_id = !empty($field_group) ? $field_group->id() : '';
$ids = $this->get_field_ids($field_id, $parent_field_id, true);
if (!$ids) {
return false;
}
list($field_id, $sub_field_id) = $ids;
$index = implode('', $ids) . ($field_group ? $field_group->index : '');
if (array_key_exists($index, $this->fields)) {
return $this->fields[$index];
}
$this->fields[$index] = new CMB2_Field($this->get_field_args($field_id, $field, $sub_field_id, $field_group));
return $this->fields[$index];
}