Prepare component
This commit is contained in:
		
							
								
								
									
										28
									
								
								config/koneko-website.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								config/koneko-website.php
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,28 @@
 | 
			
		||||
<?php
 | 
			
		||||
// Variables
 | 
			
		||||
return [
 | 
			
		||||
    // ================== 📦 CACHE DE COMPONENTE ==================
 | 
			
		||||
    'cache' => [
 | 
			
		||||
        'enabled' => (bool) env('KONEKO_WEBSITE_CACHE_ENABLED', true),
 | 
			
		||||
        'ttl'     => (int) env('KONEKO_WEBSITE_CACHE_TTL', 20 * 24 * 60),
 | 
			
		||||
    ],
 | 
			
		||||
    'menu' => [
 | 
			
		||||
        'cache' => [
 | 
			
		||||
            'enabled' => (bool) env('VUEXY_WEBSITE_MENU_CACHE_ENABLED', true),
 | 
			
		||||
            'ttl'     => (int) env('VUEXY_WEBSITE_MENU_CACHE_TTL', 3600),
 | 
			
		||||
        ],
 | 
			
		||||
        'debug' => [
 | 
			
		||||
            'show_broken_routes'   => (bool) env('VUEXY_WEBSITE_MENU_DEBUG_SHOW_BROKEN_ROUTES', false),
 | 
			
		||||
            'show_disallowed_links' => (bool) env('VUEXY_WEBSITE_MENU_DEBUG_SHOW_DISALLOWED_LINKS', false),
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
    'html' => [
 | 
			
		||||
        'cache' => [
 | 
			
		||||
            'enabled' => (bool) env('VUEXY_WEBSITE_HTML_CACHE_ENABLED', true),
 | 
			
		||||
            'ttl'     => (int) env('VUEXY_WEBSITE_HTML_CACHE_TTL', 900),
 | 
			
		||||
        ],
 | 
			
		||||
        'debug' => [
 | 
			
		||||
            'mode' => (bool) env('VUEXY_WEBSITE_HTML_DEBUG_MODE', true),
 | 
			
		||||
        ]
 | 
			
		||||
    ]
 | 
			
		||||
];
 | 
			
		||||
							
								
								
									
										108
									
								
								config/vuexy_apis_catalog.php.back
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										108
									
								
								config/vuexy_apis_catalog.php.back
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,108 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
// Este archivo **NO se registra como config**, es usado por
 | 
			
		||||
 | 
			
		||||
return [
 | 
			
		||||
 | 
			
		||||
    // ======================= GOOGLE =======================
 | 
			
		||||
 | 
			
		||||
    'google_analytics' => [
 | 
			
		||||
        'name'        => 'Google Analytics',
 | 
			
		||||
        'slug'        => 'google_analytics',
 | 
			
		||||
        'provider'    => ApiProvider::Google,
 | 
			
		||||
        'auth_type'   => ApiAuthType::OAuth2,
 | 
			
		||||
        'environment' => ApiEnvironment::Production,
 | 
			
		||||
        'base_url'    => 'https://analytics.googleapis.com',
 | 
			
		||||
        'scopes'      => ['https://www.googleapis.com/auth/analytics.readonly'],
 | 
			
		||||
        'credentials' => [
 | 
			
		||||
            'client_id'     => env('GOOGLE_ANALYTICS_CLIENT_ID'),
 | 
			
		||||
            'client_secret' => env('GOOGLE_ANALYTICS_CLIENT_SECRET'),
 | 
			
		||||
            'redirect_uri'  => env('GOOGLE_ANALYTICS_REDIRECT_URI', url('/oauth2/callback')),
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
 | 
			
		||||
    'google_translate' => [
 | 
			
		||||
        'name'        => 'Google Translate',
 | 
			
		||||
        'slug'        => 'google_translate',
 | 
			
		||||
        'provider'    => ApiProvider::Google,
 | 
			
		||||
        'auth_type'   => ApiAuthType::ApiKey,
 | 
			
		||||
        'environment' => ApiEnvironment::Production,
 | 
			
		||||
        'base_url'    => 'https://translation.googleapis.com/language/translate/v2',
 | 
			
		||||
        'credentials' => [
 | 
			
		||||
            'api_key' => env('GOOGLE_TRANSLATE_API_KEY'),
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
 | 
			
		||||
    'google_search_console' => [
 | 
			
		||||
        'name'        => 'Google Search Console',
 | 
			
		||||
        'slug'        => 'google_search_console',
 | 
			
		||||
        'provider'    => ApiProvider::Google,
 | 
			
		||||
        'auth_type'   => ApiAuthType::OAuth2,
 | 
			
		||||
        'environment' => ApiEnvironment::Production,
 | 
			
		||||
        'base_url'    => 'https://searchconsole.googleapis.com',
 | 
			
		||||
        'scopes'      => ['https://www.googleapis.com/auth/webmasters.readonly'],
 | 
			
		||||
        'credentials' => [
 | 
			
		||||
            'client_id'     => env('GOOGLE_SEARCH_CLIENT_ID'),
 | 
			
		||||
            'client_secret' => env('GOOGLE_SEARCH_CLIENT_SECRET'),
 | 
			
		||||
            'redirect_uri'  => env('GOOGLE_SEARCH_REDIRECT_URI'),
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
 | 
			
		||||
    'google_tag_manager' => [
 | 
			
		||||
        'name'        => 'Google Tag Manager',
 | 
			
		||||
        'slug'        => 'google_tag_manager',
 | 
			
		||||
        'provider'    => ApiProvider::Google,
 | 
			
		||||
        'auth_type'   => ApiAuthType::OAuth2,
 | 
			
		||||
        'environment' => ApiEnvironment::Production,
 | 
			
		||||
        'base_url'    => 'https://www.googleapis.com/tagmanager/v2',
 | 
			
		||||
        'scopes'      => ['https://www.googleapis.com/auth/tagmanager.readonly'],
 | 
			
		||||
        'credentials' => [
 | 
			
		||||
            'client_id'     => env('GOOGLE_TAG_CLIENT_ID'),
 | 
			
		||||
            'client_secret' => env('GOOGLE_TAG_CLIENT_SECRET'),
 | 
			
		||||
            'redirect_uri'  => env('GOOGLE_TAG_REDIRECT_URI'),
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
 | 
			
		||||
    // ======================= META / FACEBOOK =======================
 | 
			
		||||
 | 
			
		||||
    'facebook_messenger' => [
 | 
			
		||||
        'name'        => 'Facebook Messenger',
 | 
			
		||||
        'slug'        => 'facebook_messenger',
 | 
			
		||||
        'provider'    => ApiProvider::Facebook,
 | 
			
		||||
        'auth_type'   => ApiAuthType::OAuth2,
 | 
			
		||||
        'environment' => ApiEnvironment::Production,
 | 
			
		||||
        'base_url'    => 'https://graph.facebook.com/v17.0',
 | 
			
		||||
        'scopes'      => ['pages_messaging', 'pages_show_list'],
 | 
			
		||||
        'credentials' => [
 | 
			
		||||
            'app_id'       => env('FACEBOOK_APP_ID'),
 | 
			
		||||
            'app_secret'   => env('FACEBOOK_APP_SECRET'),
 | 
			
		||||
            'redirect_uri' => env('FACEBOOK_REDIRECT_URI'),
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
 | 
			
		||||
    // ======================= X / TWITTER =======================
 | 
			
		||||
 | 
			
		||||
    'twitter_api' => [
 | 
			
		||||
        'name'        => 'Twitter API v2',
 | 
			
		||||
        'slug'        => 'twitter_api',
 | 
			
		||||
        'provider'    => ApiProvider::Twitter,
 | 
			
		||||
        'auth_type'   => ApiAuthType::BearerToken,
 | 
			
		||||
        'environment' => ApiEnvironment::Production,
 | 
			
		||||
        'base_url'    => 'https://api.twitter.com/2',
 | 
			
		||||
        'credentials' => [
 | 
			
		||||
            'bearer_token' => env('TWITTER_BEARER_TOKEN'),
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
 | 
			
		||||
    // ======================= TAWK.TO =======================
 | 
			
		||||
 | 
			
		||||
    'tawk_to' => [
 | 
			
		||||
        'name'        => 'Tawk.to Live Chat',
 | 
			
		||||
        'slug'        => 'tawk_to',
 | 
			
		||||
        'provider'    => ApiProvider::Custom,
 | 
			
		||||
        'auth_type'   => ApiAuthType::None,
 | 
			
		||||
        'environment' => ApiEnvironment::Production,
 | 
			
		||||
        'base_url'    => 'https://embed.tawk.to',
 | 
			
		||||
        'credentials' => [],
 | 
			
		||||
    ],
 | 
			
		||||
];
 | 
			
		||||
							
								
								
									
										339
									
								
								config/vuexy_website_admin_menu copy.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										339
									
								
								config/vuexy_website_admin_menu copy.php
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,339 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
declare(strict_types=1);
 | 
			
		||||
 | 
			
		||||
// Este archivo **NO se registra como config**, es usado por VuexyMenuRegistry
 | 
			
		||||
 | 
			
		||||
return [
 | 
			
		||||
    'Web & SEO' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-settings',
 | 
			
		||||
            'description' => 'Administra la configuración, contenido, integraciones y visibilidad de tu sitio web empresarial.',
 | 
			
		||||
            'widget_label' => 'Sitio Web y SEO',
 | 
			
		||||
            'priority' => 200,
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'Configuración general' => [
 | 
			
		||||
                '_meta' => [
 | 
			
		||||
                    'icon' => 'ti ti-settings',
 | 
			
		||||
                    'description' => 'Ajustes generales del sitio, redes sociales y configuración de indexado.',
 | 
			
		||||
                    'widget_label' => 'Configuración del Sitio Web',
 | 
			
		||||
                    'home_at_root' => true,
 | 
			
		||||
                    'priority' => 100,
 | 
			
		||||
                ],
 | 
			
		||||
                'submenu' => [
 | 
			
		||||
                    'Ajustes generales' => [
 | 
			
		||||
                        'icon' => 'ti ti-settings',
 | 
			
		||||
                        'route' => 'admin.website-admin.settings.general.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.settings.general.view',
 | 
			
		||||
                        'description' => 'Personaliza el título, favicon, y otros aspectos básicos del sitio.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Enlaces sociales' => [
 | 
			
		||||
                        'icon' => 'ti ti-share',
 | 
			
		||||
                        'route' => 'admin.website-admin.settings.social.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.settings.social.view',
 | 
			
		||||
                        'description' => 'Administra los enlaces y metadatos de redes sociales.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Visibilidad en buscadores' => [
 | 
			
		||||
                        'icon' => 'ti ti-search',
 | 
			
		||||
                        'route' => 'admin.website-admin.settings.indexing.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.settings.indexing.view',
 | 
			
		||||
                        'description' => 'Controla el indexado del sitio web por los motores de búsqueda.',
 | 
			
		||||
                    ],
 | 
			
		||||
                ]
 | 
			
		||||
            ],
 | 
			
		||||
            'Contacto' => [
 | 
			
		||||
                '_meta' => [
 | 
			
		||||
                    'icon' => 'ti ti-device-mobile-question',
 | 
			
		||||
                    'description' => 'Información y formularios de contacto del sitio.',
 | 
			
		||||
                    'widget_label' => 'Información de contacto',
 | 
			
		||||
                    'home_at_root' => true,
 | 
			
		||||
                    'priority' => 200,
 | 
			
		||||
                ],
 | 
			
		||||
                'submenu' => [
 | 
			
		||||
                    'Información de contacto' => [
 | 
			
		||||
                        'icon' => 'ti ti-device-mobile-message',
 | 
			
		||||
                        'route' => 'admin.website-admin.contact.info.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.contact.info.view',
 | 
			
		||||
                        'description' => 'Dirección, teléfonos, correos y ubicación.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Formulario de contacto' => [
 | 
			
		||||
                        'icon' => 'ti ti-mail-cog',
 | 
			
		||||
                        'route' => 'admin.website-admin.contact.form.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.contact.form.view',
 | 
			
		||||
                        'description' => 'Configuración y campos del formulario de contacto.',
 | 
			
		||||
                    ],
 | 
			
		||||
                ]
 | 
			
		||||
            ],
 | 
			
		||||
            'Chat & Comunicación' => [
 | 
			
		||||
                '_meta' => [
 | 
			
		||||
                    'icon' => 'ti ti-message-dots',
 | 
			
		||||
                    'description' => 'Soporte al cliente y canales de comunicación directa.',
 | 
			
		||||
                    'widget_label' => 'Chat & Comunicación de Sitio Web',
 | 
			
		||||
                    'home_at_root' => true,
 | 
			
		||||
                    'priority' => 500,
 | 
			
		||||
                ],
 | 
			
		||||
                'submenu' => [
 | 
			
		||||
                    'Facebook Messenger' => [
 | 
			
		||||
                        'icon' => 'ti ti-brand-messenger',
 | 
			
		||||
                        'route' => 'admin.website-admin.comunication.messenger.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.comunication.messenger.view',
 | 
			
		||||
                        'description' => 'Activa el chat de Messenger en tu sitio.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Whatsapp Chat' => [
 | 
			
		||||
                        'icon' => 'ti ti-brand-whatsapp',
 | 
			
		||||
                        'route' => 'admin.website-admin.comunication.whatsapp.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.comunication.whatsapp.view',
 | 
			
		||||
                        'description' => 'Integra un botón de chat directo con WhatsApp.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Tawk.to' => [
 | 
			
		||||
                        'icon' => 'ti ti-message-dots',
 | 
			
		||||
                        'route' => 'admin.website-admin.comunication.tawk-to.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.comunication.tawk-to.view',
 | 
			
		||||
                        'description' => 'Agrega soporte en vivo con Tawk.to.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Twitter API' => [
 | 
			
		||||
                        'icon' => 'ti ti-brand-x',
 | 
			
		||||
                        'route' => 'admin.website-admin.comunication.twitter.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.comunication.twitter.view',
 | 
			
		||||
                        'description' => 'Configura la integración con Twitter/X.',
 | 
			
		||||
                    ],
 | 
			
		||||
                ]
 | 
			
		||||
            ],
 | 
			
		||||
            'CMS - Gestor de Contenidos' => [
 | 
			
		||||
                '_meta' => [
 | 
			
		||||
                    'icon' => 'ti ti-layout-grid-add',
 | 
			
		||||
                    'description' => 'Crea, edita y publica contenido dinámico basado en Blade para tu sitio web.',
 | 
			
		||||
                    'widget_label' => 'Administrador de Contenidos CMS',
 | 
			
		||||
                    'priority' => 250,
 | 
			
		||||
                ],
 | 
			
		||||
                'submenu' => [
 | 
			
		||||
                    'Menús del sitio' => [
 | 
			
		||||
                        'icon' => 'ti ti-hierarchy-3',
 | 
			
		||||
                        'route' => 'admin.website-admin.cms.menus.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.cms.menus.view',
 | 
			
		||||
                        'description' => 'Administra la estructura de navegación y menús dinámicos.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Perfil SEO' => [
 | 
			
		||||
                        'icon' => 'ti ti-settings',
 | 
			
		||||
                        'route' => 'admin.website-admin.cms.seo.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.cms.seo.view',
 | 
			
		||||
                        'description' => 'Configura las metas y parámetros SEO del sitio.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Contenidos dinámicos' => [
 | 
			
		||||
                        'icon' => 'ti ti-file-text',
 | 
			
		||||
                        'route' => 'admin.website-admin.cms.contents.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.cms.contents.view',
 | 
			
		||||
                        'description' => 'Administra páginas, bloques y parciales Blade de tu sitio.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Versiones de contenido' => [
 | 
			
		||||
                        'icon' => 'ti ti-clock-edit',
 | 
			
		||||
                        'route' => 'admin.website-admin.cms.versions.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.cms.versions.view',
 | 
			
		||||
                        'description' => 'Gestiona las versiones de contenido y restauraciones.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Plantillas disponibles' => [
 | 
			
		||||
                        'icon' => 'ti ti-template',
 | 
			
		||||
                        'route' => 'admin.website-admin.cms.templates.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.cms.templates.view',
 | 
			
		||||
                        'description' => 'Define y organiza los templates base disponibles.',
 | 
			
		||||
                    ],
 | 
			
		||||
                ],
 | 
			
		||||
            ],
 | 
			
		||||
            'Cache' => [
 | 
			
		||||
                '_meta' => [
 | 
			
		||||
                    'icon' => 'ti ti-cpu',
 | 
			
		||||
                    'description' => 'Administración y limpieza de caché para mejorar el rendimiento.',
 | 
			
		||||
                    'widget_label' => 'Cache de Sitio Web',
 | 
			
		||||
                    'home_at_root' => true,
 | 
			
		||||
                    'priority' => 900,
 | 
			
		||||
                ],
 | 
			
		||||
                'submenu' => [
 | 
			
		||||
                    'Cache HTML renderizado' => [
 | 
			
		||||
                        'icon' => 'ti ti-file-type-html',
 | 
			
		||||
                        'description' => 'Visualiza y limpia la caché de HTML completo del sitio web.',
 | 
			
		||||
                        'route' => 'admin.website-admin.cache.fullpage.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.cache.fullpage.view',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Previsualizaciones firmadas' => [
 | 
			
		||||
                        'icon' => 'ti ti-lock-access',
 | 
			
		||||
                        'description' => 'URLs de vista previa y control de firma temporal.',
 | 
			
		||||
                        'route' => 'admin.website-admin.cache.signed-previews.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.cache.signed-previews.view',
 | 
			
		||||
                    ],
 | 
			
		||||
                ]
 | 
			
		||||
            ],
 | 
			
		||||
            'Traducciones e internacional' => [
 | 
			
		||||
                '_meta' => [
 | 
			
		||||
                    'icon' => 'ti ti-language',
 | 
			
		||||
                    'description' => 'Herramientas para traducción automática del sitio.',
 | 
			
		||||
                    'widget_label' => 'Herramientas de traducción de Sitio Web',
 | 
			
		||||
                    'home_at_root' => true,
 | 
			
		||||
                    'priority' => 500,
 | 
			
		||||
                ],
 | 
			
		||||
                'submenu' => [
 | 
			
		||||
                    'Google Translate' => [
 | 
			
		||||
                        'icon' => 'ti ti-language',
 | 
			
		||||
                        'route' => 'admin.website-admin.translate.google.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.translate.google.view',
 | 
			
		||||
                        'description' => 'Activa la traducción automática con Google Translate.',
 | 
			
		||||
                    ],
 | 
			
		||||
                ]
 | 
			
		||||
            ],
 | 
			
		||||
            'Contenido' => [
 | 
			
		||||
                '_meta' => [
 | 
			
		||||
                    'icon' => 'ti ti-hierarchy',
 | 
			
		||||
                    'description' => 'Maneja contenido informativo y visual.',
 | 
			
		||||
                    'widget_label' => 'Contenidos del Sitio Web',
 | 
			
		||||
                    'home_at_root' => true,
 | 
			
		||||
                    'priority' => 400,
 | 
			
		||||
                ],
 | 
			
		||||
                'submenu' => [
 | 
			
		||||
                    'Preguntas frecuentes' => [
 | 
			
		||||
                        'icon' => 'ti ti-bubble-text',
 | 
			
		||||
                        'route' => 'admin.website-admin.content.faq.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.content.faq.view',
 | 
			
		||||
                        'description' => 'Administra las preguntas frecuentes del sitio.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Galería de imágenes' => [
 | 
			
		||||
                        'icon' => 'ti ti-photo',
 | 
			
		||||
                        'route' => 'admin.website-admin.content.gallery.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.content.gallery.view',
 | 
			
		||||
                        'description' => 'Agrega y organiza tus imágenes.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Avisos legales' => [
 | 
			
		||||
                        'icon' => 'ti ti-file-text-shield',
 | 
			
		||||
                        'route' => 'admin.website-admin.content.legal.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.content.legal.view',
 | 
			
		||||
                        'description' => 'Documentos como Términos, Aviso de Privacidad, etc.',
 | 
			
		||||
                    ],
 | 
			
		||||
                ]
 | 
			
		||||
            ],
 | 
			
		||||
            'Analítica y seguimiento' => [
 | 
			
		||||
                '_meta' => [
 | 
			
		||||
                    'icon' => 'ti ti-device-analytics',
 | 
			
		||||
                    'description' => 'Conecta tu sitio con herramientas de análisis y tracking.',
 | 
			
		||||
                    'widget_label' => 'Integraciones de analítica y seguimiento',
 | 
			
		||||
                    'home_at_root' => true,
 | 
			
		||||
                    'priority' => 300,
 | 
			
		||||
                ],
 | 
			
		||||
                'submenu' => [
 | 
			
		||||
                    'Google Analytics' => [
 | 
			
		||||
                        'icon' => 'ti ti-chart-scatter-3d',
 | 
			
		||||
                        'route' => 'admin.website-admin.analytics.google-analytics.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.analytics.google-analytics.view',
 | 
			
		||||
                        'description' => 'Integra tu cuenta de Google Analytics.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Google Tags' => [
 | 
			
		||||
                        'icon' => 'ti ti-tags',
 | 
			
		||||
                        'route' => 'admin.website-admin.analytics.google-tags.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.analytics.google-tags.view',
 | 
			
		||||
                        'description' => 'Administra etiquetas de Google Tag Manager.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Google Search Console' => [
 | 
			
		||||
                        'icon' => 'ti ti-search',
 | 
			
		||||
                        'route' => 'admin.website-admin.analytics.google-search-console.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.analytics.google-search-console.view',
 | 
			
		||||
                        'description' => 'Verifica y gestiona tu sitio con Search Console.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Pixel Meta' => [
 | 
			
		||||
                        'icon' => 'ti ti-device-analytics',
 | 
			
		||||
                        'route' => 'admin.website-admin.analytics.pixel-meta.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.analytics.pixel-meta.view',
 | 
			
		||||
                        'description' => 'Integra el pixel de Meta (Facebook Ads).',
 | 
			
		||||
                    ],
 | 
			
		||||
                ]
 | 
			
		||||
            ],
 | 
			
		||||
            'Herramientas SEO' => [
 | 
			
		||||
                '_meta' => [
 | 
			
		||||
                    'icon' => 'ti ti-code-dots',
 | 
			
		||||
                    'description' => 'Utilidades para mejorar la visibilidad en buscadores.',
 | 
			
		||||
                    'widget_label' => 'Herramientas SEO y Metadatos',
 | 
			
		||||
                    'home_at_root' => true,
 | 
			
		||||
                    'priority' => 500,
 | 
			
		||||
                ],
 | 
			
		||||
                'submenu' => [
 | 
			
		||||
                    'Mapa del sitio' => [
 | 
			
		||||
                        'icon' => 'ti ti-hierarchy',
 | 
			
		||||
                        'route' => 'admin.website-admin.seo.sitemap.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.seo.sitemap.view',
 | 
			
		||||
                        'description' => 'Genera y publica el sitemap.xml.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Google JSON-LD' => [
 | 
			
		||||
                        'icon' => 'ti ti-code-dots',
 | 
			
		||||
                        'route' => 'admin.website-admin.seo.jsonld.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.seo.jsonld.view',
 | 
			
		||||
                        'description' => 'Configura el esquema estructurado para Google.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Robots.txt' => [
 | 
			
		||||
                        'icon' => 'ti ti-code',
 | 
			
		||||
                        'route' => 'admin.website-admin.seo.robots.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.seo.robots.view',
 | 
			
		||||
                        'description' => 'Controla qué partes del sitio pueden ser indexadas.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'manifest.json' => [
 | 
			
		||||
                        'icon' => 'ti ti-file-code',
 | 
			
		||||
                        'route' => 'admin.website-admin.seo.manifest.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.seo.manifest.view',
 | 
			
		||||
                        'description' => 'Configura la compatibilidad como PWA.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Canonical URLs' => [
 | 
			
		||||
                        'icon' => 'ti ti-link',
 | 
			
		||||
                        'route' => 'admin.website-admin.seo.canonical.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.seo.canonical.view',
 | 
			
		||||
                        'description' => 'Evita duplicidad de URLs con etiquetas canónicas.',
 | 
			
		||||
                    ],
 | 
			
		||||
                    'Preview Social Cards' => [
 | 
			
		||||
                        'icon' => 'ti ti-brand-facebook',
 | 
			
		||||
                        'route' => 'admin.website-admin.seo.social-cards.index',
 | 
			
		||||
                        'can' => 'admin.website-admin.seo.social-cards.view',
 | 
			
		||||
                        'description' => 'Define títulos, imágenes y previews sociales.',
 | 
			
		||||
                    ],
 | 
			
		||||
                ]
 | 
			
		||||
            ],
 | 
			
		||||
        ]
 | 
			
		||||
    ],
 | 
			
		||||
    'Blog' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-news',
 | 
			
		||||
            'description' => 'Publica, edita y organiza artículos, categorías y comentarios de tu blog.',
 | 
			
		||||
            'after_to' => 'Web & SEO',
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'Categorias' => [
 | 
			
		||||
                'icon' => 'ti ti-category',
 | 
			
		||||
                'route' => 'admin.website-admin.blog.categories.index',
 | 
			
		||||
                'can' => 'admin.website-admin.blog.categories.view',
 | 
			
		||||
            ],
 | 
			
		||||
            'Etiquetas' => [
 | 
			
		||||
                'icon' => 'ti ti-tags',
 | 
			
		||||
                'route' => 'admin.website-admin.blog.tags.index',
 | 
			
		||||
                'can' => 'admin.website-admin.blog.tags.view',
 | 
			
		||||
            ],
 | 
			
		||||
            'Articulos' => [
 | 
			
		||||
                'icon' => 'ti ti-news',
 | 
			
		||||
                'route' => 'admin.website-admin.blog.articles.index',
 | 
			
		||||
                'can' => 'admin.website-admin.blog.articles.view',
 | 
			
		||||
            ],
 | 
			
		||||
            'Comentarios' => [
 | 
			
		||||
                'icon' => 'ti ti-message',
 | 
			
		||||
                'route' => 'admin.website-admin.blog.comments.index',
 | 
			
		||||
                'can' => 'admin.website-admin.blog.comments.view',
 | 
			
		||||
            ],
 | 
			
		||||
        ]
 | 
			
		||||
    ],
 | 
			
		||||
    'Plantillas' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-template',
 | 
			
		||||
            'description' => 'Gestiona las plantillas disponibles para tu sitio web.',
 | 
			
		||||
            'after_to' => 'Blog',
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'Plantillas' => [
 | 
			
		||||
                'icon' => 'ti ti-template',
 | 
			
		||||
                'route' => 'admin.website-admin.templates.index',
 | 
			
		||||
                'can' => 'admin.website-admin.templates.view',
 | 
			
		||||
            ],
 | 
			
		||||
        ]
 | 
			
		||||
    ],
 | 
			
		||||
];
 | 
			
		||||
							
								
								
									
										218
									
								
								config/vuexy_website_admin_menu.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										218
									
								
								config/vuexy_website_admin_menu.php
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,218 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
declare(strict_types=1);
 | 
			
		||||
 | 
			
		||||
// Este archivo **NO se registra como config**, es usado por VuexyMenuRegistry
 | 
			
		||||
 | 
			
		||||
return [
 | 
			
		||||
    'Sitios Web' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-world',
 | 
			
		||||
            'description' => 'Administra múltiples sitios, dominios, plantillas y configuración global.',
 | 
			
		||||
            'widget_label' => 'Sitios Web y Dominios',
 | 
			
		||||
            'home_at_root' => true,
 | 
			
		||||
            'priority' => 100,
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'Todos los sitios' => [
 | 
			
		||||
                'icon' => 'ti ti-world',
 | 
			
		||||
                'route' => 'admin.website-admin.sites.index',
 | 
			
		||||
                'can' => 'admin.website-admin.sites.view',
 | 
			
		||||
                'description' => 'Listado general de sitios activos y configurables.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Crear nuevo sitio' => [
 | 
			
		||||
                'icon' => 'ti ti-world-plus',
 | 
			
		||||
                'route' => 'admin.website-admin.sites.create',
 | 
			
		||||
                'can' => 'admin.website-admin.sites.create',
 | 
			
		||||
                'description' => 'Inicia un nuevo sitio web desde cero.',
 | 
			
		||||
            ],
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
    'Configuración del Sitio' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-settings-cog',
 | 
			
		||||
            'description' => 'Ajustes, branding, visibilidad y plantilla del sitio actual.',
 | 
			
		||||
            'widget_label' => 'Configuración de Sitio Web',
 | 
			
		||||
            'home_at_root' => true,
 | 
			
		||||
            'priority' => 150,
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'General y Branding' => [
 | 
			
		||||
                'icon' => 'ti ti-tools',
 | 
			
		||||
                'route' => 'admin.website-admin.settings.general.index',
 | 
			
		||||
                'can' => 'admin.website-admin.settings.general.view',
 | 
			
		||||
                'description' => 'Nombre, idioma, favicon, y plantilla activa.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Indexación y Robots' => [
 | 
			
		||||
                'icon' => 'ti ti-search',
 | 
			
		||||
                'route' => 'admin.website-admin.settings.indexing.index',
 | 
			
		||||
                'can' => 'admin.website-admin.settings.indexing.view',
 | 
			
		||||
                'description' => 'Controla el acceso de motores de búsqueda a tu sitio.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Canonical y manifest.json' => [
 | 
			
		||||
                'icon' => 'ti ti-file-code',
 | 
			
		||||
                'route' => 'admin.website-admin.settings.canonical.index',
 | 
			
		||||
                'can' => 'admin.website-admin.settings.canonical.view',
 | 
			
		||||
                'description' => 'Evita duplicados y mejora la visibilidad PWA.',
 | 
			
		||||
            ],
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
    'SEO y Metadatos' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-zoom-code',
 | 
			
		||||
            'description' => 'Herramientas de optimización SEO, metadatos y JSON-LD.',
 | 
			
		||||
            'widget_label' => 'SEO & Metadatos',
 | 
			
		||||
            'home_at_root' => true,
 | 
			
		||||
            'priority' => 200,
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'Perfil SEO' => [
 | 
			
		||||
                'icon' => 'ti ti-graph',
 | 
			
		||||
                'route' => 'admin.website-admin.seo.profile.index',
 | 
			
		||||
                'can' => 'admin.website-admin.seo.profile.view',
 | 
			
		||||
                'description' => 'Define metadatos, OG y Twitter Cards del sitio.',
 | 
			
		||||
            ],
 | 
			
		||||
            'JSON-LD y Schema.org' => [
 | 
			
		||||
                'icon' => 'ti ti-code-dots',
 | 
			
		||||
                'route' => 'admin.website-admin.seo.jsonld.index',
 | 
			
		||||
                'can' => 'admin.website-admin.seo.jsonld.view',
 | 
			
		||||
                'description' => 'Configura estructuras para Google y otros buscadores.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Mapa del sitio y Robots' => [
 | 
			
		||||
                'icon' => 'ti ti-hierarchy',
 | 
			
		||||
                'route' => 'admin.website-admin.seo.sitemap.index',
 | 
			
		||||
                'can' => 'admin.website-admin.seo.sitemap.view',
 | 
			
		||||
                'description' => 'Controla el sitemap.xml y robots.txt globalmente.',
 | 
			
		||||
            ],
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
    'CMS Koneko' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-layout-dashboard',
 | 
			
		||||
            'description' => 'Gestión de contenido visual, bloques, menús y plantillas.',
 | 
			
		||||
            'widget_label' => 'Editor de Contenido CMS',
 | 
			
		||||
            'home_at_root' => true,
 | 
			
		||||
            'priority' => 300,
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'Páginas y bloques' => [
 | 
			
		||||
                'icon' => 'ti ti-file-text',
 | 
			
		||||
                'route' => 'admin.website-admin.cms.contents.index',
 | 
			
		||||
                'can' => 'admin.website-admin.cms.contents.view',
 | 
			
		||||
                'description' => 'Administra contenido dinámico estructurado por bloques.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Menús del sitio' => [
 | 
			
		||||
                'icon' => 'ti ti-hierarchy-3',
 | 
			
		||||
                'route' => 'admin.website-admin.cms.menus.index',
 | 
			
		||||
                'can' => 'admin.website-admin.cms.menus.view',
 | 
			
		||||
                'description' => 'Gestiona la navegación del sitio.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Versiones y previews' => [
 | 
			
		||||
                'icon' => 'ti ti-clock-edit',
 | 
			
		||||
                'route' => 'admin.website-admin.cms.versions.index',
 | 
			
		||||
                'can' => 'admin.website-admin.cms.versions.view',
 | 
			
		||||
                'description' => 'Historial de versiones de contenido y vista previa.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Plantillas' => [
 | 
			
		||||
                'icon' => 'ti ti-template',
 | 
			
		||||
                'route' => 'admin.website-admin.cms.templates.index',
 | 
			
		||||
                'can' => 'admin.website-admin.cms.templates.view',
 | 
			
		||||
                'description' => 'Gestiona y asigna plantillas de presentación.',
 | 
			
		||||
            ],
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
    'Integraciones API' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-plug',
 | 
			
		||||
            'description' => 'Configura APIs y servicios externos como Analytics o Chat.',
 | 
			
		||||
            'widget_label' => 'Extensiones y APIs',
 | 
			
		||||
            'home_at_root' => true,
 | 
			
		||||
            'priority' => 400,
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'Google & Meta' => [
 | 
			
		||||
                'icon' => 'ti ti-brand-google',
 | 
			
		||||
                'route' => 'admin.website-admin.integrations.analytics.index',
 | 
			
		||||
                'can' => 'admin.website-admin.integrations.analytics.view',
 | 
			
		||||
                'description' => 'Google Analytics, Search Console, Pixel Meta, etc.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Chat y comunicación' => [
 | 
			
		||||
                'icon' => 'ti ti-message-dots',
 | 
			
		||||
                'route' => 'admin.website-admin.integrations.chat.index',
 | 
			
		||||
                'can' => 'admin.website-admin.integrations.chat.view',
 | 
			
		||||
                'description' => 'Messenger, WhatsApp, Tawk.to y más.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Traducción e idioma' => [
 | 
			
		||||
                'icon' => 'ti ti-language',
 | 
			
		||||
                'route' => 'admin.website-admin.integrations.translate.index',
 | 
			
		||||
                'can' => 'admin.website-admin.integrations.translate.view',
 | 
			
		||||
                'description' => 'Integraciones como Google Translate o DeepL.',
 | 
			
		||||
            ],
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
    'Sistema de Cache' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-database-cog',
 | 
			
		||||
            'description' => 'Herramientas avanzadas de rendimiento y renderizado.',
 | 
			
		||||
            'widget_label' => 'Motor de Cache',
 | 
			
		||||
            'home_at_root' => true,
 | 
			
		||||
            'priority' => 500,
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'HTML completo' => [
 | 
			
		||||
                'icon' => 'ti ti-file-type-html',
 | 
			
		||||
                'route' => 'admin.website-admin.cache.full.index',
 | 
			
		||||
                'can' => 'admin.website-admin.cache.full.view',
 | 
			
		||||
                'description' => 'Gestiona caché render de páginas completas.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Bloques de contenido' => [
 | 
			
		||||
                'icon' => 'ti ti-box-model',
 | 
			
		||||
                'route' => 'admin.website-admin.cache.blocks.index',
 | 
			
		||||
                'can' => 'admin.website-admin.cache.blocks.view',
 | 
			
		||||
                'description' => 'Visualiza y limpia caché por bloques individuales.',
 | 
			
		||||
            ],
 | 
			
		||||
            'Previews firmadas' => [
 | 
			
		||||
                'icon' => 'ti ti-key',
 | 
			
		||||
                'route' => 'admin.website-admin.cache.previews.index',
 | 
			
		||||
                'can' => 'admin.website-admin.cache.previews.view',
 | 
			
		||||
                'description' => 'Controla la vigencia y firma de URLs temporales.',
 | 
			
		||||
            ],
 | 
			
		||||
        ],
 | 
			
		||||
    ],
 | 
			
		||||
    'Blog' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-news',
 | 
			
		||||
            'description' => 'Publica, edita y organiza artículos, categorías y comentarios de tu blog.',
 | 
			
		||||
            'after_to' => 'Web & SEO',
 | 
			
		||||
        ],
 | 
			
		||||
        'submenu' => [
 | 
			
		||||
            'Categorias' => [
 | 
			
		||||
                'icon' => 'ti ti-category',
 | 
			
		||||
                'route' => 'admin.website-admin.blog.categories.index',
 | 
			
		||||
                'can' => 'admin.website-admin.blog.categories.view',
 | 
			
		||||
            ],
 | 
			
		||||
            'Etiquetas' => [
 | 
			
		||||
                'icon' => 'ti ti-tags',
 | 
			
		||||
                'route' => 'admin.website-admin.blog.tags.index',
 | 
			
		||||
                'can' => 'admin.website-admin.blog.tags.view',
 | 
			
		||||
            ],
 | 
			
		||||
            'Articulos' => [
 | 
			
		||||
                'icon' => 'ti ti-news',
 | 
			
		||||
                'route' => 'admin.website-admin.blog.articles.index',
 | 
			
		||||
                'can' => 'admin.website-admin.blog.articles.view',
 | 
			
		||||
            ],
 | 
			
		||||
            'Comentarios' => [
 | 
			
		||||
                'icon' => 'ti ti-message',
 | 
			
		||||
                'route' => 'admin.website-admin.blog.comments.index',
 | 
			
		||||
                'can' => 'admin.website-admin.blog.comments.view',
 | 
			
		||||
            ],
 | 
			
		||||
        ]
 | 
			
		||||
    ],
 | 
			
		||||
    'Plantillas' => [
 | 
			
		||||
        '_meta' => [
 | 
			
		||||
            'icon' => 'ti ti-template',
 | 
			
		||||
            'description' => 'Gestiona las plantillas disponibles para tu sitio web.',
 | 
			
		||||
            'after_to' => 'Blog',
 | 
			
		||||
        ]
 | 
			
		||||
    ],
 | 
			
		||||
];
 | 
			
		||||
		Reference in New Issue
	
	Block a user