debug: Add trace logging to functions.php try-catch block

This commit is contained in:
FrankZamora
2025-11-27 13:44:11 -06:00
parent d867212790
commit eeacfdb284

View File

@@ -94,8 +94,11 @@ use ROITheme\Admin\Infrastructure\Api\WordPress\AdminMenuRegistrar;
use ROITheme\Admin\Infrastructure\Services\AdminAssetEnqueuer;
try {
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [1] Try block started\n", FILE_APPEND);
// Obtener Use Case para cargar configuraciones
$getComponentSettingsUseCase = $container?->getGetComponentSettingsUseCase();
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [2] getComponentSettingsUseCase OK\n", FILE_APPEND);
// Crear MenuItem con configuración del panel
$menuItem = new MenuItem(
@@ -121,6 +124,8 @@ try {
$adminAssetEnqueuer = new AdminAssetEnqueuer(get_template_directory_uri());
$adminAssetEnqueuer->register();
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [3] Admin panel registered\n", FILE_APPEND);
// Obtener Use Case para guardar configuraciones
$saveComponentSettingsUseCase = $container?->getSaveComponentSettingsUseCase();
@@ -148,6 +153,8 @@ try {
);
$newsletterAjaxHandler->register();
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [4] Newsletter handler registered\n", FILE_APPEND);
// Crear y registrar el inyector de Theme Settings (GA, Custom CSS/JS)
$themeSettingsRenderer = new \ROITheme\Public\ThemeSettings\Infrastructure\Ui\ThemeSettingsRenderer();
$themeSettingsInjector = new \ROITheme\Public\ThemeSettings\Infrastructure\Services\ThemeSettingsInjector(
@@ -156,16 +163,26 @@ try {
);
$themeSettingsInjector->register();
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [5] ThemeSettings registered\n", FILE_APPEND);
// === YOUTUBE FACADE (PageSpeed Optimization Phase 2.4) ===
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [6] About to create YoutubeFacade classes\n", FILE_APPEND);
// Lazy-load YouTube iframes to reduce TBT by ~2000ms
$youtubeFacadeRenderer = new \ROITheme\Public\YoutubeFacade\Infrastructure\Ui\YoutubeFacadeRenderer();
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [7] YoutubeFacadeRenderer created\n", FILE_APPEND);
$youtubeFacadeFilter = new \ROITheme\Public\YoutubeFacade\Infrastructure\Services\YoutubeFacadeContentFilter(
$youtubeFacadeRenderer
);
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [8] YoutubeFacadeContentFilter created\n", FILE_APPEND);
$youtubeFacadeHooksRegistrar = new \ROITheme\Public\YoutubeFacade\Infrastructure\Wordpress\YoutubeFacadeHooksRegistrar(
$youtubeFacadeFilter
);
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [9] YoutubeFacadeHooksRegistrar created\n", FILE_APPEND);
$youtubeFacadeHooksRegistrar->register();
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [10] YoutubeFacade registered successfully\n", FILE_APPEND);
// Log en modo debug
if (defined('WP_DEBUG') && WP_DEBUG) {
@@ -174,6 +191,7 @@ try {
} catch (\Throwable $e) {
// Manejar errores de inicialización del panel
file_put_contents('/tmp/yt-debug.log', date('H:i:s') . " [CATCH] Exception: " . $e->getMessage() . " in " . $e->getFile() . ":" . $e->getLine() . "\n", FILE_APPEND);
if (defined('WP_DEBUG') && WP_DEBUG) {
error_log('ROI Theme: Failed to initialize Admin Panel: ' . $e->getMessage() . ' in ' . $e->getFile() . ':' . $e->getLine());
}