¿Hay algún lugar donde haya una buena crítica sobre la estructura de directorios de Drupal?

Respuestas:

24

No he visto uno, así que comencemos una lista aquí. En Drupal 5, 6 y 7 la estructura se ve así:

  • incluye: incluye archivos con funciones php y clases que componen la API de Drupal
  • misceláneos: activos diversos como archivos e imágenes javascript
  • módulos: módulos principales de Drupal (no destinados a módulos contrib y personalizados)
  • perfiles - perfiles de instalación
  • scripts: scripts de shell para desarrolladores y administradores
  • sitios: todos los archivos que agrega un desarrollador para crear un sitio

    • sitios / todas / bibliotecas: bibliotecas de terceros, por ejemplo. un editor de wysiwyg
    • sitios / todos / módulos - módulos contribuidos y personalizados
    • sitios / todos / temas - contribuido y temas (sub) personalizados
    • sites / default: contiene la configuración predeterminada.php
    • sites / default / files: el directorio predeterminado para los archivos cargados por el usuario
    • sites / example.com / modules - el directorio de módulos específicos del sitio en una estructura multisitio
    • sites / example.com / themes - el directorio de temas específicos del sitio en una estructura multisitio
    • sites / example.com / files: el directorio específico del sitio para archivos cargados por el usuario en una estructura multisitio
  • temas - Temas principales de Drupal
marcvangend
fuente
7

Mi primera respuesta fue cierta para Drupal 7 y siguientes. Mientras tanto, se ha comprometido un gran cambio para Drupal 8 y superiores. La mayoría de los archivos principales ahora viven en una carpeta 'principal'. Puede leer más al respecto en esta publicación de blog o en el número original en drupal.org .

La nueva estructura se ve así:

  • core: contiene todos los archivos y carpetas que componen Drupal core (es decir, la parte que no debe piratear) )
    • núcleo / incluye - incluye archivos con funciones php y clases que componen la API de Drupal
    • core / misc - activos diversos como archivos e imágenes javascript
    • core / modules: módulos core de Drupal (no destinados a módulos contrib y personalizados)
    • core / scripts: scripts de shell para desarrolladores y administradores
    • core / themes - Temas principales de Drupal
  • perfiles - perfiles de instalación
  • sitios: todos los archivos que agrega un desarrollador para crear un sitio

    • sitios / todas / bibliotecas: bibliotecas de terceros, por ejemplo. un editor de wysiwyg
    • sitios / todos / módulos - módulos contribuidos y personalizados
    • sitios / todos / temas - contribuido y temas (sub) personalizados
    • sites / default: contiene la configuración predeterminada.php
    • sites / default / files: el directorio predeterminado para los archivos cargados por el usuario
marcvangend
fuente
3
Esta respuesta no está completa en este momento, porque Drupal 8 ha progresado y ahora contiene directorios como / code / vendor y los / modules y / themes rediseñados. Si alguien tiene una buena visión general del estado actual de Drupal 8, no dude en actualizar la respuesta.
marcvangend
¡La caída siempre se mueve !
geerlingguy
2

La respuesta aceptada es buena. Estos son solo mis dos centavos para expandir otras respuestas, como desarrollador de sitios en Drupal 7. Es más fácil navegar al actualizar muchos módulos personalizados, pocas funciones y subtemas principales / personalizados.

  • sitios / todos
    • / módulos
      • / contrib
      • /personalizado
      • /caracteristicas
    • / bibliotecas
    • / temas
  • sitios / ejemplo.com
    • igual que sitios / todos / * con necesidades específicas de instancia de sitio cuando sea apropiado
usuario20301
fuente
Quiero exactamente lo mismo en Drupal 7 que ha mencionado en su respuesta, pero me pregunto cómo puedo instalar un nuevo módulo en el sites/all/modules/customdirectorio. Por favor ayuda en esto.
Bhavik Shah
Realmente no he intentado colocar módulos en el directorio personalizado con drupal ui (ftp). Simplemente los ftp / ssh allí directamente o lo asigno en un archivo MAKE. Como nota al margen, la instalación y la disponibilidad del módulo son diferentes, ya que esto último implica modificaciones del sistema.
user20301