Drupal 8: Estructura de archivos
Buenas Drupaleros, como ya sabréis Drupal 8 ha sufrido grandes cambios sobre todo la nueva incorporación de Symfony como motor framework.
 
Pues bien aprovechando esto, Drupal se ha actualizado y ha realizado una serie de modificaciones que, según ellos, facilitará la introducción de nuevos developers a Drupal.
 
Entre estas modificaciones, se encuentra una de las primeras que cualquier desarrollador que instale Drupal 8 se encontrara al ver el código. Esta modificación se trata de la nueva estructura de carpetas y archivos que dispone Drupal 8.. 
 
Tanto si ya os habéis descargado Drupal 8 como si no, hoy veremos que nos vamos a encontrar. De todos modos os recomiendo que o durante o al final os descargáis Drupal 8 para poder interiorizar estos nuevos conceptos.
 
EL CORE
 
Uno de los primeros conceptos que veremos es donde se encuentra el core de Drupal.
 
Lo que antes encontraba repartido por todo drupal (modules,themes,include...) ahora se encuentra recogido en una única carpeta que se llama core.
 
Esto se hizo así para solucionar una serie de problemas:
1- Tratar de explicar a Drupaleros novatos que en la carpeta modules y theme de la raíz no se ha de poner nuestros módulos o temas contribuidos o custom.
2- Tener mayor organización de los archivos de core.
3- “facilitar” la actualización de Drupal 8. En teoría a partir de ahora si quisiéramos actualizar Drupal 8 bastaría con actualizar solamente la carpeta core. 
 
QUE HAY DENTRO DEL CORE?
 
Si entramos a la carpeta core, veremos lista de archivos y carpetas que ya nos recuerdan algo mas al antiguo drupal, aquí cada uno tiene un fin concreto que listare y explicaré a continuación.
 
/core/assets: Encontraremos los assets (javascripts,css...) que el core necesita para funcionar.
/core/misc: Aquí estan los assets que necesita el front-end para que se vea correctamente.
/core/includes: Aquí encontraremos funcionalidades de drupal a bajo nivel. Es decir todo lo que hace que drupal sea drupal.
/core/lib: Aqui se agrupan las classes del core de drupal
/core/modules: Aquí se añaden los modulos que son propios del core de drupal, esta carpeta es la misma que estaba en la raiz en Drupal 7.
/core/profiles: Lo mismo que modules pero para los perfiles de instalación.
/core/themes: Lo mismo que modules pero con los temas básicos del core.
/core/scripts: Aqui hay un conjunto de scripts varios 
/core/tests: Aqui se añaden los test del core. Un nuevo concepto que en drupal 7 pasaba como desapercibido.
 
Y ademas de esta lista de carpetas también están los míticos archivos install.php, update.php,*.txt ....
 
MODULES, THEMES & PROFILE
 
Bien, como ya hemos visto, el concepto cambia y ahora tenemos estas tres carpetas limpias en la raíz. Y esto se debe a que ahora si que sí, Ya podéis añadir vuestros módulos, temas y demás en sus carpetas correspondientes.
 
Pero... Ya no se podrán añadir en sites/all/? Bueno la teoría dice que sí, de echo podríais crear, ahí dentro, una carpeta modules y añadir vuestros módulos y funcionaria igual. 
 
Pero desde mi punto de vista si algo es mas fácil para que complicarse?
 
El echo de que se haya dejado esta funcionalidad es por el tema de los subdominios de esta forma podremos seguir usando subdominios con nuestros customizados.
 
SITES
 
Sites no cambia en exceso, sigue siendo y teniendo la misma funcionalidad que drupal 7, que es básicamente agrupar los archivos, imágenes y demas de tu web y como siempre el lugar donde añadir tus subdominios.
 
VENDOR
 
Bueno, aquí viene symfony, esta carpeta es básicamente symfony y es “el core” que necesita para funcionar. Es mas si entráis en esa carpeta veréis una carpeta llamada symfony, bien pues ese es el core de symfony.
 
Dado que Drupal 8 usar una serie de componentes propios de Symfony veréis que además hay unas cuantas “carpetas” mas, estas no son mas que extensiones, otro nuevo concepto que aprender para Drupal 8.
 
CONCLUSION
 
En definitiva la nueva estructura me parece aceptable, es mucho mas limpia y organizada y eso de poner meter módulos en una carpeta que se llama modules y que encima esta en la raíz me parece algo que era de cajón, no se porque tardaron tanto en darse cuenta.
 
Otros de los puntos positivos es la carpeta core que hará que actualizar sea un juego de niños no como ahora en Drupal 7 que se le considera deporte de riesgo. 
 
Y en cuando a symfony veremos que pasa cuando lleguen sus actualizaciones! 
 
Si os ha gustado compartir! Y si teneis mas dudas o quereis añadir algo mas, comentad! Que es gratis!!
 
 
Total de votos: 127

Entradas relacionadas

Comentarios (2)

  • Imagen de Edgardo

    Edgardo (no verificado)

    Hola Raúl, he instalado un drupal 8 con acquia en mi ordenador windows y solamente funciona si lo instalo en inglés. En español me da un fallo. Como solución descargué la traducción el archivo es.po pero no sé en que carpeta debo pegarlo. Tienes alguna solución para poder traducir el sitio completamente?

  • Imagen de admin

    admin

    Buenas edgardo, la verdad que nunca he tenido este problema asi que o pruebas a descargarte los idiomas desde el backend de drupal o puedes consultarlo en el apartado de preguntas que hay en drupaleros... igual alguien te puede ayudar.. Un saludo.

Deja un comentario