为Drupal站点创建子主题

季宏言 |

有时候我们为了方便主题的修改和管理,通常会创建一个子主题。这个子主题完全继承了父主题。如果使用的是默认主题,而且修改了默认主题,那么在系统升级的时候,升级的文件会覆盖掉我们修改的文件,为了避免这个尴尬,那么我们用子主题就可以保证顺利升级,又能保证我们修改的东西被保存了下来。下面我们一起看看如何为Drupal创建子主题吧。

首先,这里我们基于Bartik主题来创建一个mytheme的子主题。我们Drupal站点的目录下的在themes文件夹创建一个mytheme的文件夹。然后创建mytheme.info.yml文件,mytheme.info.yml文件内容如下:

name: mytheme 
type: theme
base theme: bartik
description: 'A flexible, recolorable theme with many regions and a responsive, mobile-first layout.'
version: 1.x
core: 8.x
core_version_requirement: ^8 || ^9
libraries:
  - artbartik/global-styling
regions:
  header: Header
  primary_menu: 'Primary menu'
  secondary_menu: 'Secondary menu'
  page_top: 'Page top'
  page_bottom: 'Page bottom'
  highlighted: Highlighted
  featured_top: 'Featured top'
  breadcrumb: Breadcrumb
  content: Content
  sidebar_first: 'Sidebar first'
  sidebar_second: 'Sidebar second'
  featured_bottom_first: 'Featured bottom first'
  featured_bottom_second: 'Featured bottom second'
  featured_bottom_third: 'Featured bottom third'
  footer_first: 'Footer first'
  footer_second: 'Footer second'
  footer_third: 'Footer third'
  footer_fourth: 'Footer fourth'
  footer_fifth: 'Footer fifth'

然后创建mytheme.libraries.yml文件,文件内容如下:

global-styling:
  version: 1.x  
  css:    
    theme:
      css/style.css: {}  
  js:
    js/script.js: {}

然后在mytheme文件夹下创建css/style.css和js/script.js两个文件。

最去网站后台启用mytheme并设置为默认主题。这样子主题就设置好了,以后直接修改相关样式即可。

另外,我推荐几款我常用的Drupal主题。如果需要可以用用试试。

本文参考了以下链接:
https://www.drupal.org/docs/theming-drupal/creating-sub-themes

添加新评论

此字段内容将保密,不会被其他人看见。