From 772462eeca3002a1d52508aeba485aab2b4742ad Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Tue, 03 Mar 2026 19:06:19 +0000
Subject: [PATCH] =MAJOR OVERHAUL. Likely should have made a new branch ages ago. Key changes: Registrar.php is the base for custom post types, taxonomies, and user roles. Replaces JVB_CONTENT, JVB_TAXONOMY, and JVB_USER constants, eliminates most of Features.php (except for JVB_SITE, JVB_MEMBERSHIP), and has built in sanitizing and validation via sub-classes. Also started a major overhaul of the Schema output. Created a shit ton of property traits and classes to help sanitize and ensure proper data for different schema types. Still a bunch to do, but better to be starting committing changes here on this other branch.
---
inc/meta/MetaTypeManager.php | 27 ++++++++++++++++++---------
1 files changed, 18 insertions(+), 9 deletions(-)
diff --git a/inc/meta/MetaTypeManager.php b/inc/meta/MetaTypeManager.php
index 6fcc1ba..69a2fd9 100644
--- a/inc/meta/MetaTypeManager.php
+++ b/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',
@@ -50,6 +50,11 @@
'sanitize' => 'sanitize_email',
'default' => '',
],
+ 'phone' => [
+ 'type' => 'string',
+ 'sanitize' => 'sanitizeTelephone',
+ 'default' => '',
+ ],
'url' => [
'type' => 'string',
'sanitize' => 'esc_url_raw',
@@ -130,23 +135,27 @@
'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;
}
+ public static function getTypes():array
+ {
+ return static::$type_map;
+ }
}
--
Gitblit v1.10.0