feat: mejorar DB Manager para soportar ambas tablas (components y defaults)
- Agregar constante TABLE_DEFAULTS para tabla de valores por defecto - Modificar get_table_name() para aceptar parámetro table_type - Actualizar create_tables() para crear ambas tablas con estructura idéntica - Modificar todos los métodos (get_config, save_config, delete_config, list_components) para aceptar table_type - Actualizar Settings Manager get_defaults() para leer desde tabla defaults usando DB Manager - Mantener compatibilidad hacia atrás con valor por defecto 'components' Arquitectura final: - wp_apus_theme_components_defaults = Valores por defecto del tema (escritura algoritmo) - wp_apus_theme_components = Personalizaciones del usuario (escritura admin panel) - Una sola clase (APUS_DB_Manager) maneja ambas tablas con misma estructura
This commit is contained in:
@@ -68,15 +68,23 @@ class APUS_Settings_Manager {
|
||||
|
||||
/**
|
||||
* Valores por defecto
|
||||
* NOTA: Los defaults se cargarán desde la tabla wp_apus_theme_components_defaults
|
||||
* Lee los defaults desde la tabla wp_apus_theme_components_defaults
|
||||
*/
|
||||
public function get_defaults() {
|
||||
return array(
|
||||
$db_manager = new APUS_DB_Manager();
|
||||
$component_names = $db_manager->list_components('defaults');
|
||||
|
||||
$defaults = array(
|
||||
'version' => APUS_ADMIN_PANEL_VERSION,
|
||||
'components' => array(
|
||||
// Los componentes se agregarán aquí cuando se ejecute el algoritmo
|
||||
)
|
||||
'components' => array()
|
||||
);
|
||||
|
||||
// Obtener configuraciones de cada componente desde la tabla de defaults
|
||||
foreach ($component_names as $component_name) {
|
||||
$defaults['components'][$component_name] = $db_manager->get_config($component_name, null, 'defaults');
|
||||
}
|
||||
|
||||
return $defaults;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user