juancho44 / yii2-adminlte3-tempiu
AdminLTE 3 for Yii 2.0 Framework
Installs: 13
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Type:yii2-extension
Requires
- php: >=7.0
Suggests
- almasaeed2010/adminlte: ^3.1.0
- npm-asset/fortawesome--fontawesome-free: ^6.7.2
- yiisoft/yii2: ~2.0.0
- yiisoft/yii2-bootstrap4: ~2.0.10
This package is auto-updated.
Last update: 2025-08-22 16:15:43 UTC
README
Una extensión completa para Yii2 Framework que integra AdminLTE 3, proporcionando un sistema de administración moderno y responsive con widgets personalizados, generadores CRUD y plantillas de vistas optimizadas.
📋 Tabla de Contenidos
- Características
- Requisitos
- Instalación
- Uso Básico
- Widgets Disponibles
- Generadores CRUD
- Plantillas de Vistas
- Assets y Dependencias
- Ejemplos de Uso
- Contribución
- Licencia
✨ Características
- AdminLTE 3 Integration: Integración completa con AdminLTE 3 para una interfaz moderna
- Widgets Personalizados: Alert, Menu, Toast y ActionColumn optimizados para AdminLTE
- Generadores CRUD: Plantillas personalizadas para Gii con diseño AdminLTE
- Responsive Design: Interfaz completamente responsive y mobile-friendly
- Font Awesome 6: Iconos modernos y consistentes
- Bootstrap 4: Framework CSS moderno y robusto
- Plantillas de Layout: Layouts principales, login y componentes reutilizables
🔧 Requisitos
- PHP >= 7.0
- Yii2 Framework ~2.0.0
- Yii2 Bootstrap4 ~2.0.10
- AdminLTE ^3.1.0
- Font Awesome Free ^6.7.2
📦 Instalación
Via Composer
composer require juancho44/yii2-adminlte3-tempiu
Configuración Manual
- Descarga el proyecto
- Coloca la carpeta
src
en tu proyecto Yii2 - Configura el autoloader en
composer.json
:
{ "autoload": { "psr-4": { "juancho44\\adminlte3\\": "src" } } }
🚀 Uso Básico
Registro de Assets
use juancho44\adminlte3\assets\AdminLteAsset; use juancho44\adminlte3\assets\FontAwesomeAsset; // En tu vista o layout AdminLteAsset::register($this); FontAwesomeAsset::register($this);
Layout Principal
<?= $this->render('@juancho44/adminlte3/example/yii2-views/layouts/main') ?>
Layout de Login
<?= $this->render('@juancho44/adminlte3/example/yii2-views/layouts/main-login') ?>
🎨 Widgets Disponibles
Alert Widget
Muestra mensajes flash con estilos AdminLTE:
use juancho44\adminlte3\widgets\Alert; // En tu vista <?= Alert::widget(); ?> // Configuración personalizada <?= Alert::widget([ 'closeButton' => ['tag' => 'button'], 'isAjaxRemoveFlash' => false ]); ?>
Menu Widget
Menú lateral con soporte para iconos Font Awesome:
use juancho44\adminlte3\widgets\Menu; <?= Menu::widget([ 'items' => [ [ 'label' => 'Dashboard', 'icon' => 'tachometer-alt', 'url' => ['site/index'] ], [ 'label' => 'Usuarios', 'icon' => 'users', 'items' => [ ['label' => 'Listar', 'url' => ['user/index'], 'icon' => 'list'], ['label' => 'Crear', 'url' => ['user/create'], 'icon' => 'plus'] ] ] ] ]); ?>
Toast Widget
Notificaciones toast con estilos AdminLTE:
use juancho44\adminlte3\widgets\Toast; <?= Toast::widget([ 'title' => 'Notificación', 'delay' => 3000, 'layout' => 'toasts-top-right' ]); ?>
ActionColumn
Columna de acciones para GridView con iconos Font Awesome:
use juancho44\adminlte3\grid\ActionColumn; // En tu GridView 'columns' => [ // ... otras columnas ['class' => 'juancho44\adminlte3\grid\ActionColumn'], ]
🔧 Generadores CRUD
Configuración en Gii
- Ve a
/gii
en tu aplicación - Selecciona "CRUD Generator"
- En "Code Template" selecciona "adminlte3"
- Configura tu modelo y controlador
- Genera el código
Características de las Plantillas
- Vistas Responsive: Todas las vistas usan Bootstrap 4 y AdminLTE
- Iconos Font Awesome: Botones y elementos con iconos modernos
- Cards AdminLTE: Contenido organizado en cards elegantes
- Formularios Optimizados: Campos de formulario con estilos AdminLTE
- Breadcrumbs: Navegación clara con breadcrumbs
- Paginación Bootstrap 4: Paginación moderna y responsive
🎭 Plantillas de Vistas
Layouts Disponibles
- main.php: Layout principal con sidebar, navbar y footer
- main-login.php: Layout para páginas de autenticación
- navbar.php: Barra de navegación superior
- sidebar.php: Menú lateral con usuario y navegación
- header.php: Encabezado de contenido con breadcrumbs
- footer.php: Pie de página con información de versión
Vistas de Ejemplo
- login.php: Formulario de login con estilos AdminLTE
- error.php: Página de error personalizada
- CRUD Views: Vistas completas para operaciones CRUD
📁 Estructura del Proyecto
src/
├── assets/ # Assets y bundles
│ ├── AdminLteAsset.php # Asset principal de AdminLTE
│ ├── FontAwesomeAsset.php # Asset de Font Awesome
│ ├── PluginAsset.php # Asset de plugins
│ └── plugin/ # Plugins adicionales
│ └── CustomFileInputAsset.php
├── grid/ # Componentes de grid
│ └── ActionColumn.php # Columna de acciones personalizada
├── widgets/ # Widgets personalizados
│ ├── Alert.php # Widget de alertas
│ ├── Menu.php # Widget de menú
│ └── Toast.php # Widget de notificaciones
├── gii/ # Generadores de código
│ └── generators/crud/adminlte3/
│ ├── controller.php # Plantilla de controlador
│ ├── search.php # Plantilla de búsqueda
│ └── views/ # Plantillas de vistas CRUD
└── example/ # Ejemplos de implementación
└── yii2-views/ # Vistas de ejemplo
├── layouts/ # Layouts de ejemplo
└── site/ # Vistas de sitio de ejemplo
💡 Ejemplos de Uso
Configuración Completa en Layout
<?php use juancho44\adminlte3\assets\AdminLteAsset; use juancho44\adminlte3\assets\FontAwesomeAsset; use juancho44\adminlte3\widgets\Alert; AdminLteAsset::register($this); FontAwesomeAsset::register($this); ?> <!DOCTYPE html> <html> <head> <title><?= $this->title ?></title> </head> <body class="hold-transition skin-blue sidebar-mini"> <div class="wrapper"> <?= $this->render('navbar') ?> <?= $this->render('sidebar') ?> <div class="content-wrapper"> <?= $this->render('header') ?> <section class="content"> <div class="container-fluid"> <?= Alert::widget() ?> <?= $content ?> </div> </section> </div> <?= $this->render('footer') ?> </div> </body> </html>
Menú Personalizado
<?= Menu::widget([ 'options' => [ 'class' => 'nav nav-pills nav-sidebar flex-column', 'data-widget' => 'treeview', 'role' => 'menu' ], 'items' => [ [ 'label' => 'Dashboard', 'icon' => 'tachometer-alt', 'url' => ['site/index'] ], [ 'label' => 'Administración', 'icon' => 'cogs', 'badge' => ['message' => 'New', 'badgeType' => 'danger'], 'items' => [ ['label' => 'Usuarios', 'url' => ['user/index'], 'icon' => 'users'], ['label' => 'Roles', 'url' => ['role/index'], 'icon' => 'user-shield'], ['label' => 'Permisos', 'url' => ['permission/index'], 'icon' => 'key'] ] ] ] ]); ?>
🔌 Assets y Dependencias
Dependencias Principales
- AdminLTE 3: Framework de administración moderno
- Bootstrap 4: Framework CSS responsive
- Font Awesome 6: Iconos vectoriales
- jQuery: Biblioteca JavaScript (incluida con AdminLTE)
Configuración de Assets
// En tu configuración de aplicación 'components' => [ 'assetManager' => [ 'bundles' => [ 'juancho44\adminlte3\assets\AdminLteAsset' => [ 'css' => ['css/adminlte.min.css'], 'js' => ['js/adminlte.min.js'] ] ] ] ]
🚀 Configuración Avanzada
Personalización de Temas
// Cambiar el tema de AdminLTE <body class="hold-transition skin-green sidebar-mini"> // Opciones disponibles: skin-blue, skin-green, skin-red, skin-yellow, skin-purple, skin-black
Configuración de Menú
// Configuración global del menú Menu::$iconType = 'fas'; // Tipo de icono por defecto Menu::$iconPrefix = 'fa-'; // Prefijo de icono Menu::$iconDefault = 'circle'; // Icono por defecto
🤝 Contribución
- Fork el proyecto
- Crea una rama para tu feature (
git checkout -b feature/AmazingFeature
) - Commit tus cambios (
git commit -m 'Add some AmazingFeature'
) - Push a la rama (
git push origin feature/AmazingFeature
) - Abre un Pull Request
Guías de Contribución
- Sigue los estándares de codificación de Yii2
- Añade documentación para nuevas funcionalidades
- Incluye tests para nuevos widgets
- Mantén la compatibilidad con versiones anteriores
📝 Licencia
Este proyecto está licenciado bajo la licencia BSD-4-Clause. Ver el archivo LICENSE para más detalles.
👨💻 Autor
Juancho44
🙏 Agradecimientos
- AdminLTE Team por el excelente framework de administración
- Yii2 Framework por el framework PHP robusto
- Font Awesome por los iconos vectoriales
- Bootstrap por el framework CSS
📞 Soporte
Si tienes alguna pregunta o necesitas ayuda:
- Abre un issue
- Contacta al autor: juanclama@gmail.com
- Consulta la documentación de Yii2
⭐ Si este proyecto te es útil, por favor dale una estrella en GitHub!