Añadiendo secciones personalizadas al Administrador de Contenidos (Back-End)
soporte, ws.webtv, personalización, avanzada, secciones, backend, back, end
Como desarrollador, puede necesitar añadir nuevas secciones al Administrador de Contenidos para mostrar información adicional, o para gestionar otros datos diferentes a los gestionados nativamente por el sistema. Desde WS.WebTV v3.1 (release 50) es posible añadir secciones al Back-End cuando lo desee.
¿Qué es una sección personalizada de Back-End?
Bueno, es como un lienzo en blanco. Son páginas donde el sistema reemplaza el título, menú y otros datos genéricos del CMS (como textos de los packs de idioma). Como estas páginas son HTML y no contienen código PHP, necesitará "rellenarlas" usando AJAX. Es libre de añadir todos los scripts y elementos HTML que necesite a estas páginas.
NOTA:
Cuando sea posible, recomendamos utilizar estructuras de HTML (formularios, campos, listas, tablas, ...) similares a las usadas en otras páginas/plantillas del Back-End de manera que el look de las nuevas páginas sea consistente con el resto del Administrador de Contenidos.
Explicando con un ejemplo:
La siguiente imagen muestra una sección personalizada de Back-End:
Para el ejemplo anterior, definimos una sección de Back-End en el archivo config/Config.inc.php añadiendo el siguiente código:
$CUSTOM_BACKEND_SECTIONS["miSeccion"] = array( "required_access_level" => 1, // 0: Webmaster, 1: Admin, 2: Autor, 3: Colaborador "title" => "Mi sección", "template" => "_sample_custom_backend_section.tpl" );Desglosemos el ejemplo:
<script> var accLvl = parseInt("{k.user.accessLevel}"); var customBackEndSectionURL = "myCustomSection"; // debe coincidir con el índice utilizado en la variable de configuración $CUSTOM_BACKEND_SECTIONS var customBackEndSectionTitle = "Mi sección"; // este es el título del botón (debe ser lo más corto posible) if ( accLvl<=1 ) // sólo añadimos el botón si el usuario es Webmaster o Admin { // añadimos el botón en la pantalla de inicio ... if ( $(".homeButtonsCont").length) $(".homeButtonsCont ul").append('<li><a href="'+SITE_BASE_URL+'index.php/admin/'+customBackEndSectionURL+'/" class="homeButton"><img src="'+SITE_BASE_URL+'public/backend/images/pixel.gif" class="iconSettings" alt=""> '+customBackEndSectionTitle+'</a></li>'); // añadimos el botón en el menú superior ... if ( $(".moreOptions").length) $(".moreOptions ul").append('<li><a href="'+SITE_BASE_URL+'index.php/admin/'+customBackEndSectionURL+'/" id="'+customBackEndSectionURL+'"> '+customBackEndSectionTitle+'</a></li>'); } </script>NOTA: En este ejemplo utilizamos el ícono de "Ajustes" (clase "iconSettings").