PodsForm::field_types PHP Method

field_types() public static method

Get a list of all available field types and include
Since: 2.3
public static field_types ( ) : array
return array Registered Field Types data
    public static function field_types()
    {
        $field_types = array('text', 'website', 'phone', 'email', 'password', 'paragraph', 'wysiwyg', 'code', 'datetime', 'date', 'time', 'number', 'currency', 'file', 'avatar', 'pick', 'boolean', 'color', 'slug');
        $field_types = array_merge($field_types, array_keys(self::$field_types));
        $field_types = array_filter(array_unique($field_types));
        $types = apply_filters('pods_api_field_types', $field_types);
        $field_types = pods_transient_get('pods_field_types');
        if (empty($field_types) || count($types) != count($field_types)) {
            $field_types = array();
            foreach ($types as $field_type) {
                $file = null;
                if (isset(self::$field_types[$field_type])) {
                    $file = self::$field_types[$field_type]['file'];
                }
                self::field_loader($field_type, $file);
                if (!isset(self::$loaded[$field_type]) || !is_object(self::$loaded[$field_type])) {
                    continue;
                }
                $class_vars = get_class_vars(get_class(self::$loaded[$field_type]));
                // PHP 5.2.x workaround
                $field_types[$field_type] = $class_vars;
                $field_types[$field_type]['file'] = $file;
            }
            self::$field_types = $field_types;
            pods_transient_set('pods_field_types', self::$field_types);
        } else {
            self::$field_types = array_merge($field_types, self::$field_types);
        }
        return self::$field_types;
    }

Usage Example

Example #1
0
 /**
  * Get a list of all available field types and include
  *
  * @return array Registered Field Types data
  *
  * @since 2.3
  */
 public static function field_types()
 {
     $field_types = array('text', 'website', 'phone', 'email', 'password', 'paragraph', 'wysiwyg', 'code', 'datetime', 'date', 'time', 'number', 'currency', 'file', 'avatar', 'pick', 'boolean', 'color', 'slug');
     $field_types = array_merge($field_types, array_keys(self::$field_types));
     $field_types = array_filter(array_unique($field_types));
     $types = apply_filters('pods_api_field_types', $field_types);
     $field_types = pods_transient_get('pods_field_types');
     if (empty($field_types) || count($types) != count($field_types)) {
         $field_types = array();
         foreach ($types as $field_type) {
             $file = null;
             if (isset(self::$field_types[$field_type])) {
                 $file = self::$field_types[$field_type]['file'];
             }
             self::field_loader($field_type, $file);
             if (!isset(self::$loaded[$field_type]) || !is_object(self::$loaded[$field_type])) {
                 continue;
             }
             $class_vars = get_class_vars(get_class(self::$loaded[$field_type]));
             // PHP 5.2.x workaround
             $field_types[$field_type] = $class_vars;
             $field_types[$field_type]['file'] = $file;
         }
         self::$field_types = $field_types;
         pods_transient_set('pods_field_types', self::$field_types);
     } else {
         self::$field_types = array_merge($field_types, self::$field_types);
     }
     return self::$field_types;
 }
All Usage Examples Of PodsForm::field_types