기본 테마로 Classy 사용하기
Classy는 드루팔 8 코어의 테마이고 Bartik과 Seven이 사용하는 기본테마이다. classy의 HTML 마크업은 BEM과 SMACSS 의 사용자에게 익숙한 방법으로 구성된 수많은 CSS 클래스를 가지고 있다. 이러한 명명규칙은 강력하지만, 모두에게 그런 것은 아니다. 과거에 드루팔이 추가한 클래스들은 어떤 사람에게는 유용하지만 다른 사람에게는 방해가 된다. 드루팔 8에서는 선호하는 기본 테마를 선택할 때 그것들을 포함할지 안할지를 선택할 수 있다.
클래스 집합 전체를 사용하고자 한다면, 베이스 테마로 Classy를 정의해라. 자세한 사항은 드루팔 8 서브테마 만들기를 참조하라.
테마가 최소한의 CSS 만을 가지고 있기를 원한다면 기본 테마로 Classy를 사용하지 말아라. 대신 Stable이 권장하는데, 기본 테마를 지정하지 않는다면 Stable 이 기본값이다. 예를들어 자신이 테마에서 사용되는 CSS와 JS 프레임웍이 드루팔 클래스와 충돌하길 원하지 않는다면 Stable 을 사용하게 된다. 하지만 Classy를 배제하면 클래스의 이름을 짓는 것에 대한 모든 책임을 져야한다.
더 많은 정보들
- Controlling CSS Classes with the Classy Theme in Drupal 8
- Summary of discussion that led to Classy
- Issue: Add classy.info.yml to core, set Classy as base theme for Bartik and Seven
- Change record
Classy 테마의 css 선택자들
https://www.drupal.org/docs/8/theming-drupal-8/classy-themes-css-selectors
classy 테마 드루팔8 RC2에 있는 모든 css 클래스 선택자들
자세한 내용은 해당 문서 참조.
테마에 기본 이미지 스타일을 포함시키기
드루팔은 이미지 스타일들의 생성을 위해 이미지에 다양한 효과를 줄 수 있고 원본 이미지의 파생물을 생성할 수 있는 강력한 이미지 조작 시스템을 가지고 있다. 이 기능은 코어가 제공하는 이미지가 아닌 테마에 맞게 작동하도록 생성된 기본 이미지를 테마에 포함하고자 할 때 활용할 수 있다.
테마에 이미지 스타일을 포함하는 과정은 모듈에 기본 설정 포함하기와 유사하다.
- UI를 사용해서 포함시키고 싶은 이미지 스타일을 생성한다.
- 이미지 스타일을 YAML로 내보내기 한다.
- 내보낸 YAML을 적절한 명명규칙을 사용하여 confit/install 디렉토리에 만든다.
시작은 Configuration > Image Styles (admin/config/media/image-styles) 에서 관리자 UI를 사용해 이미지 스타일을 만드는 것이다. 일단 이미지 스타일을 만들고 저장하면 , 이미지 스타일을 구성하는 설정들이 사이트의 active config에 저장된다.
이러한 설정은 다음과 같이 내보낼 수 있다:
- Configuration > Configuration management > Single Import/Export > Export (admin/config/development/configuration/single/export) 에서 Single item 내보내기를 선택한다.
- Configuration type에서 "Image style"을 선택한다.
- configuration name에서 내보낼 이미지 스타일을 선택한다.
이미지 스타일의 YAML 방식의 코드가 텍스트영역에 나타나면 복사해서 테마의 config/install 디렉토리에 .yml 파일로 붙여넣기 한다. 설정파일은 특정 명명규칙인 image.style.{image style name}.yml 을 따른다. 사용해야할 이름은 텍스트 영역 아래에서 정확히 알려준다.
내보낸 설정에는 첫번째 줄에 UUID key가 있는데, UUID는 image.style.{image style name}.yml 파일에서는 제거해야 한다.
예 THEMENAME/config/install/image.style.black_white.yml
langcode: en
status: true
dependencies: { }
name: black_white
label: 'black & white'
effects:
8d4f85cc-9a2d-4a30-af15-21b0833dc06d:
uuid: 8d4f85cc-9a2d-4a30-af15-21b0833dc06d
id: image_desaturate
weight: 1
data: { }
third_party_settings: { }
테마에 포함할 수 있는 이미지 스타일의 수에는 제약이 없다. 이미지 스타일들은 테마가 설치될 때 active configuration으로 가져와질 것이다.
테마가 설치된 후에는 config/install에 있는 이미지스타일의 YML 파일을 수정해도 아무런 영향을 미치지 않고, config/install 에 이미지스타일의 YML 파일을 추가해도 마찬가지이다.