Drupal8主题开发--Drupal8主题目录

Drupal8网站建设中,drupal8主题是定义展示层的文件的聚集。你也可以给予一个主题创建一个或者多个子主题。只有.info.yml文件是必须的,但是大多数的主题和子主题都将要使用其他的文件。这个页面将列出一个典型的主题或者子主题的文件和文件夹。

Drupal8主题的位置
你必须复制Drupal8主题到你安装的Drupal的"themes"文件夹下面。注意,Drupal8的核心主题蔽日bartik 和seven 位于core/themes文件夹下。
把第三方的主题复制到命名为contib的文件夹下,把自定义的主题复制到custom目录下是一个好习惯。
每一个Drupal8主题都包含在一个以主题自身来命名的文件夹下。名字必须:小写、以字母开始、使用下划线代替空格。Drupal8的安装目录如下:
|-core
  |  |-modules
  |  |-themes
  |  |  |-bartik
  |  |  |-seven
  ..
  |-modules
  |-themes
  |  |-contrib
  |  |  |-zen
  |  |  |-basic
  |  |  |-bluemarine
  |  |-custom
  |  |  |-fluffiness

主题文件夹的结构


|-fluffiness.breakpoints.yml
  |-fluffiness.info.yml
  |-fluffiness.libraries.yml
  |-fluffiness.theme
  |-config
  |  |-install
  |  |  |-fluffiness.settings.yml
  |  |-schema
  |  |  |-fluffiness.schema.yml
  |-css
  |  |-style.css
  |-js
  |  |-fluffiness.js
  |-images
  |  |-buttons.png
  |-logo.png
  |-screenshot.png
  |-templates
  |  |-maintenance-page.html.twig
  |  |-node.html.twig


.info.yml
一个Drupal8必须包含一个.info.yml文件。
.libraries.yml
.libraries.yml文件用于定义jiavaxript 和css libraries
breakpoints.yml
断点定义哪些地方相应式设计需要修改,为了适应不同的设备。断点的设置:https://www.drupal.org/documentation/modules/breakpoint
.theme
这是一个php文件,包含所有的可能的逻辑和(预)处理数据。
css/
把css文件存储在css文件夹中是一个好习惯。主题要加载css文件,这个css文件必须在.libraties.yml文件中被定义,并且可以在.info.yml文件中被覆盖或者删除。
js/
把js文件存储在js文件夹中是一个好习惯。主题要加载js文件,这个js文件必须在.libraties.yml文件中被定义。
images/
存放主题用到的图片文件
screenshot.png
如果一个screenshot.png 文件在主题中被找到,那么这个图片将用于主题设置页面,可以在.info.yml文件中定义screenshot。
logo.svg

tempates/
模板提供html标记和演示逻辑;与Drupal7相反,Drupal8的模板文件必须存储在template子目录中,如果你熟悉命名规范,Drupal将用你自己提供的模板文件替换核心的模板文件,允许你覆盖默认的标记。