Scroll
6.2. Od čega se sastoji Drupal 8 tema. Pregled Stark teme.
U Drupalu 7, mogli ste brzo i lako napraviti podtemu na Zen i početi praviti svoj sajt. Od Drupal 8 postoje takođe nekoliko graditelja tema za kreiranje sopstvenih tema. Ali pre nego što napravite podtemu na njima, potrebno je da se malo upoznate gde šta treba da se nalazi.
Drupal programeri predlažu da pogledamo primer teme Stark. Ova tema je dodata u Drupal samo da biste se upoznali kako je tema organizovana. Hajde da vidimo šta se nalazi unutar ove teme:
Fajl Stark.info.yml
Počinje pregled sa fajlom stark.info.yml. Ranije u Drupal 7, podaci o temi su bili smešteni u .info fajlovima, dok Drupal 8 koristi YML format, tako da je sada .info fajl zapravo info.yml u YML formatu. U YML formatu, ključevi i vrednosti se odvajaju dvotačkom.
Ime teme:
name: Stark
Tip projekta može biti tema, modul. Ovde imamo temu.
type: theme
Opis koji se prikazuje na stranici sa temama:
description: 'Namerno jednostavna tema bez stilizacije za demonstraciju podrazumevanog HTML i CSS-a u Drupalu. Naučite kako da pravite sopstvenu temu iz Stark-a u Theming Guide.'
Grupisanje Drupal projekata radi lakše organizacije, na primer, kada se moduli uključuju, grupisaće se u kartice:
package: Core
Verzija za dodatne module se podešava automatski, pa je ovde varijabla VERSION, a sama linija je zakomentarisana. U stvari, verzija je navedena ispod:
# version: VERSION
Core verzija Drupala je takođe zakomentarisana i automatski se ubacuje sa drupal.org:
Za Drupal 8.8 i novije:
core: 8.x
core_version_requirement: ^8 || ^9
Za Drupal 8.8 i starije:
# core: 8.x
Da li tema koristi neku osnovnu temu, false znači da ne koristi: base theme: false Blok sa verzijom teme i za koji core je namenjena se automatski ubacuje sa drupal.org:
# Information added by Drupal.org packaging script on 2016-02-03
version: '8.0.3'
core: '8.x'
project: 'drupal'
datestamp: 1454490380
Fajl stark.libraries.yml
Ovde se uključuju CSS i JS fajlovi teme:
global-styling:
version: VERSION
css:
base:
css/layout.css: {}
Takođe možemo uključiti JavaScript fajlove:
global-styling:
version: VERSION
css:
base:
css/layout.css: {}
js:
js/custom.js: {}
Vredno je napomenuti da je jQuery sada opciono koristiti i možda neće biti prikazan na stranici. Ako koristite jQuery u sopstvenom skriptu, morate ga dodati u zavisnosti teme:
global-styling:
version: VERSION
css:
base:
css/layout.css: {}
js:
js/custom.js: {}
dependencies:
- core/jquery
Takođe, za CSS fajlove možete odrediti koji fajlovi uvek treba da se prikazuju, a koji samo u print verziji:
global-styling:
version: VERSION
css:
base:
css/layout.css: {}
css/style.css: {}
css/colors.css: {}
css/print.css: { media: print }
js:
js/custom.js: {}
dependencies:
- core/jquery
Opisni fajlovi README.txt, screenshot.png
Ovi fajlovi prikazuju kako tema izgleda i kako se instalira, ako postoje neke posebnosti instalacije ili upotrebe.Fajl Logo.svg
Logo fajl se automatski povezuje sa dizajnom teme ako se nalazi u korenu sajta. Takođe, logo možete postaviti kroz podešavanja teme.Folder config i fajl stark.schema.yml
Još jedan YML fajl teme u kome se čuvaju podešavanja teme. Za Stark temu, ovde je samo naslov za stranicu podešavanja Stark teme.Folderi css, js
Ovi folderi čuvaju prilagođene CSS i JavaScript fajlove. Ne zaboravite da nije dovoljno samo staviti fajl u folder da bi bio uključen. Svaki fajl mora biti posebno uključen kroz stark.libraries.yml.Fajl stark.breakpoints.yml
Ovaj fajl definiše veličine ekrana za mobilne verzije sajta. Ovo je nova funkcija Drupala, o tome ćemo detaljno pričati u nekom od narednih članaka.
stark.mobile:
label: mobile
mediaQuery: '(min-width: 0px)'
weight: 0
multipliers:
- 1x
stark.narrow:
label: narrow
mediaQuery: 'all and (min-width: 480px) and (max-width: 959px)'
weight: 1
multipliers:
- 1x
stark.wide:
label: wide
mediaQuery: 'all and (min-width: 960px)'
weight: 2
multipliers:
- 1x
Evo teme Stark za upoznavanje. U narednom članku ćemo pogledati kako da napravimo sopstvenu temu na bazi Stable teme.