En el anterior tutorial, hicimos un repaso de cómo instalar Concrete5, y hoy vamos a ver el Sistema de archivos en Concrete5, es decir, como está jerarquizado Concrete5 en carpetas, para entender mejor como funciona y sobre todo donde hay que “atacar” cuando tengamos un problema o queramos modificar algo.
Vamos a ir detallando cada una de las carpetas:
/blocks: Esta carpeta, que en el inicio de la instalación no tiene ningún contenido, contendrá los bloques que vayamos añadiendo mediante “Add Block” en el edición de contenido.
/concrete: Es el directorio de la aplicación, donde se encuentran los propios archivos del corazón de Concrete5.
/config: Aquí tenemos el archivo “site.php”. La configuración como vimos en el anterior artículo, la añadimos durante la instalación de Concrete5 donde viene informado los datos de conexión a la base de datos. O también contiene el archivo “site_theme_paths.php” donde se permite al desarrollador especificar ciertas áreas de la plantilla manualmente.
/controllers: En esta carpeta tenemos los controladores de las páginas, vistas y módulos del panel de control que usemos en nuestro sitio web. Es una carpeta típica en el uso del patrón MVC (Model, View, Controller)
/elements: Esta carpeta nos servirá para guardar pequeños trozos de código PHP que vayamos a reusar en nuestro sitio web, como por ejemplo puede ser el menu de la cabecera, que usaremos durante todo el sitio, y así no tener que poner el mismo código en todas las páginas.
/files: Contendrá todos los archivos añadidos por el usuario a través del CMS Concrete5, aunque también puede tener información de cache o logs.
/helpers: Esta carpeta también tiene la función de reusar funciones basados en asistencia o ayuda. Puedes incluir tus propias funciones de ayudas.
/libraries: Existe una diferencia entre helpers y libraries en que esta última tiene más alcance y los archivos de helpers ayudan a un propósito específico.
/Mail: En este directorio están incluidas todas las plantillas de correo electrónico que utiliza tu sitio web, así como el ayudante de correo.
/models: Contiene las clases PHP para bases de datos. Para realizar accesos a la base de datos, tendrás que crear clases específicas en esta carpeta con las querys.
/single_pages: Las páginas individuales como Login, Registro, se encuentran en este directorio.
/themes: Sitio donde se encuentre el theme por defecto de Concrete5 y donde nosotros podremos incluir un theme personalizado o descargado.
/tools: Podemos llamarlo como el popurrí de archivos que necesitemos para nuestro Concrete5, es decir, el cajón desastre de scripts necesarios y que no podamos categorizar en los anteriores directorios.
/config: Directorio de configuración interna de Concrete5 y contiene el archivo principal de la instalación de la base de datos y otras constantes.
/css: Las hojas de estilo usadas por el gestor de contenidos.
/flash: Archivos flash usados por el gestor de contenidos.
/images: El directorio donde tendremos todas las imágenes usadas por los componentes de interface de Concrete5.
/js: Al igual que la anterior, pero en este caso lo que contiene son archivos tipo Javascript.
/packages: Contiene directorios que se pueden acceder desde todo el sistema. Desde este directorio podriamos acceder desde dos sitios web distintos de una misma instalación. En ella podemos incluir: páginas simples, bloques, elementos, módulos del panel de control, controladores, plantillas de e-mail y plantillas web.
/startup: Se incluyen subrutinas que se carga una web mediante el dispatcher.php
Aunque haya sido un poco técnico este artículo, es necesario conocer el esqueleto de Concrete5 para que cuando tengamos que modificar algo o incluir, sepamos donde acudir rápidamente.
Información Relacionada: Tu Concrete5 desde sólo 5,45€/mes!