Jake Vanderwerf
2026-02-04 2127b1bdd73ecd2423e443992da4b442f5a3c1a3
inc/meta/MetaTypeManager.php
@@ -9,7 +9,7 @@
 */
class MetaTypeManager
{
    protected array $type_map = [
    protected static array $type_map = [
        'text' => [
            'type'      => 'string',
            'sanitize'  => 'sanitize_text_field',
@@ -85,6 +85,11 @@
            'sanitize' => 'sanitizeRepeater',
         'default'   => [],
        ],
      'tag_list' => [
         'type' => 'object',
         'sanitize' => 'sanitizeTagList',
         'default' => []
      ],
      'group' => [
         'type' => 'object',
         'sanitize' => 'sanitizeGroup',
@@ -125,23 +130,23 @@
         'default'   => '',
        ]
    ];
   public function getType(string $field_name):array
   public static function getType(string $field_name):array
   {
      return $this->type_map[$field_name]??[];
      return static::$type_map[$field_name]??[];
   }
    public function getMetaType(string $field_type):string
    public static function getMetaType(string $field_type):string
    {
        return $this->type_map[$field_type]['type'] ?? 'string';
        return static::$type_map[$field_type]['type'] ?? 'string';
    }
    public function getSanitizeCallback(string $field_type):string
    public static function getSanitizeCallback(string $field_type):string
    {
        return $this->type_map[$field_type]['sanitize'] ?? 'sanitize_text_field';
        return static::$type_map[$field_type]['sanitize'] ?? 'sanitize_text_field';
    }
    public function registerType(string $type, array $config):void
    public static function registerType(string $type, array $config):void
    {
        $this->type_map[$type] = $config;
        static::$type_map[$type] = $config;
    }
}