Definisanje teme pomoću .info.yml fajla
Da biste kreirali Drupal 8 temu, prvo je potrebno napraviti fajl THEMENAME.info.yml koji pruža metapodatke o vašoj temi u Drupalu. Ovo je slično kao što se definišu moduli i instalacioni profili, i zato je važno da ključ „type“ u fajlu .info.yml bude postavljen na „theme“ kako bi se razlikovao.
Ova stranica sadrži primer fajla THEMENAME.info.yml i pregled informacija koje fajl može sadržavati.
Kreirajte .info.yml fajl
Kreirajte .info.yml fajl u korenu fascikle vaše teme. Fascikla treba da ima isto ime kao i .info.yml fajl. Dakle, ako se vaša tema zove „Fluffiness“, fascikla će se zvati „fluffiness/“, a .info.yml fajl će biti „fluffiness/fluffiness.info.yml“. Ako fajl postoji sa minimalno neophodnim svojstvima (name, type i core), vaša tema će se pojaviti na vašem sajtu u sekciji „Upravljanje > Izgled“ (http://example.com/admin/appearance). Ne zaboravite da izaberete ime teme koje još nije zauzeto od strane modula ili druge teme. Ime teme mora biti jedinstveno u Drupal konfiguraciji, u suprotnom komponente teme neće biti pravilno učitane.
Zamenite razmake u imenu teme donjom crtom (_) u imenu fascikle (i imenu .info.yml fajla).
Ako niste upoznati sa YAML strukturom fajlova, pročitajte kratki uvod u YAML format fajlova.
- Tabulatori NISU dozvoljeni. Koristite SAMO razmake.
- Svojstva i liste MORAJU imati uvlačenje od dva (2) razmaka.
Primer
name: Fluffiness type: theme description: 'A cuddly theme that offers extra fluffiness.' core: 8.x libraries: - fluffiness/global-styling base theme: classy regions: header: Header content: Content sidebar_first: 'Sidebar first' footer: Footer
Na vašem Drupal sajtu možete pronaći više primera .info.yml fajlova pregledom tema koje dolaze sa jezgrom. Na primer, otvorite fasciklu core/themes/stark i potražite fajl stark.info.yml.
Parovi ključ/vrednost
Sledeći parovi ključ/vrednost daju metapodatke o vašoj temi i definišu neka osnovna podešavanja. (Pogledajte \Drupal\Core\Extension\InfoParserInterface::parse().)
- name (obavezno)
- type (obavezno)
- description (neobavezno)
- package (neobavezno)
- core (obavezno)
- php (neobavezno)
- version (neobavezno)
- libraries (neobavezno)
- libraries-override (neobavezno)
- libraries-extend (neobavezno)
- base theme (preporučeno)
- hidden (neobavezno)
- engine (neobavezno)
- logo (neobavezno)
- screenshot (neobavezno)
- regions (neobavezno)
- regions_hidden (neobavezno)
- features (neobavezno)
- stylesheets-remove (nije preporučeno)
- ckeditor_stylesheets (neobavezno)
name – ime (obavezno)
Čitljivo ime. Pojaviće se na stranici „Izgled“ gde je tema aktivirana.
name: Fluffiness
type – tip (obavezno)
Označava tip ekstenzije, tj. „module“, „theme“ ili „profile“. Za teme mora uvek biti „theme“. Ovo je osetljivo na velika i mala slova.
type: theme
description – opis (neobavezno)
Opis koji se prikazuje na stranici „Izgled“.
description: An extra cuddly Drupal theme available in grey and blue.
package – paket (neobavezno)
Definiše „paket“ koji omogućava grupisanje tema zajedno.
package: Core
core (obavezno)
Definiše verziju Drupal jezgra sa kojom je tema kompatibilna.
core: 8.x
php (neobavezno)
Minimalna verzija PHP. Podrazumevano koristi vrednost konstante DRUPAL_MINIMUM_PHP.
php: 5.5.9
version – verzija (neobavezno)
Definiše verziju. Za teme koje su postavljene na drupal.org, broj verzije se automatski popunjava tokom pakovanja. Nemojte ga unositi ručno, odnosno izostavite ovaj red.
version: 8.x-1.0
libraries – biblioteke (neobavezno)
Lista biblioteka (koje mogu sadržati CSS i JavaScript resurse) koje se dodaju na sve stranice gde je tema aktivna. Saznajte više o temama i bibliotekama resursa.
libraries: - fluffiness/global-styling
libraries-override – preklapanje biblioteka (neobavezno)
Kolekcija biblioteka i resursa za preklapanje. Više pročitajte o preklapanju i proširenju biblioteka.
libraries-override: contextual/drupal.contextual-links: css: component: /core/themes/stable/css/contextual/contextual.module.css: false
libraries-extend – proširenje biblioteke (neobavezno)
Kolekcija biblioteka i resursa koje se dodaju pri učitavanju biblioteke. Više pročitajte o preklapanju i proširenju biblioteka.
libraries-extend: core/drupal.user: - classy/user1 - classy/user2
base theme – osnovna tema (preporučeno)
Tema može naslediti resurse od druge teme navodeći je kao osnovnu temu. Preporučuje se korišćenje classy ili stable (podrazumevano stable ako ključ nije naveden) - ovo olakšava nasleđivanje budućih promena u glavnoj temi.
base theme: classy
hidden (neobavezno)
Navodi da li tema treba biti skrivena sa stranice „Izgled“, tako da ne može biti omogućena/isključena preko korisničkog interfejsa.
hidden: true
engine (neobavezno)
Temački motor. Podrazumevano je „twig“.
engine: twig
logo – logo (neobavezno)
Pogledajte izmenu zapisa: https://www.drupal.org/node/2939152
Putanja do logotipa relativna u odnosu na .info.yml fajl teme. Podrazumevano Drupal traži fajl pod imenom „logo.svg“ u korenu fascikle teme i koristi ga kao logo teme.
logo: images/logo.png
screenshot – snimak ekrana (neobavezno)
Putanja do snimka ekrana relativna u odnosu na .info.yml fajl teme. Snimci ekrana treba da budu širine 588 piksela i visine 438 piksela, mada se prikazuju u manjoj veličini. Podrazumevano Drupal traži fajl „screenshot.png“ u korenu fascikle teme i koristi ga kao sliku teme na stranici „Izgled“.
screenshot: fluffiness.png
regions – regioni (neobavezno)
Lista tematskih regiona. (Obratite pažnju da ključevima regiona ne prethodi crtice.) Saznajte više o dodavanju regiona u temu.
regions: header: Header content: Content sidebar_first: 'First sidebar'
regions_hidden (neobavezno)
Lista nasledjenih regiona za uklanjanje.
regions_hidden: - sidebar_last
features – mogućnosti (neobavezno)
Lista funkcionalnosti koje će biti prikazane na stranici podešavanja teme „Settings“.
features: - comment_user_verification - comment_user_picture - favicon - logo - node_user_picture
stylesheets-remove – uklanjanje stilova (nije preporučeno)
Lista stilova iz drugih modula ili tema za uklanjanje sa svih stranica gde je tema aktivna. Svaka vrednost mora biti potpuni put u odnosu na dokument kako bi se izbegle nedoumice ako postoji više fajlova sa istim imenom. Kada je fajl deo biblioteke koja pripada modulu ili temi, umesto punog puta može se koristiti token u formatu @module_or_theme_name. Obratite pažnju da se pri korišćenju tokena vrednost mora navoditi u navodnicima jer je „@“ rezervisan znak u YAML-u. Napomena: ovaj ključ je zastareo i biće uklonjen u Drupalu 9. Većinom slučajeva treba koristiti libraries-override.
stylesheets-remove: - core/assets/vendor/normalize-css/normalize.css - '@classy/css/components/tabs.css'
ckeditor_stylesheets (neobavezno)
Lista stilova koji se dodaju u CKEditor okvir.
ckeditor_stylesheets: - https://fonts.googleapis.com/css?family=Open+Sans - css/base/elements.css
Više informacija
- Dodavanje CSS i JavaScript fajlova u Drupal 8 temu
- Kompletan opis svih ključeva dostupnih u *.info.yml fajlu može se naći u: Neka Drupal 8 upozna vaš modul pomoću .info.yml fajla.
- Izmena zapisa: .info fajlovi su sada .info.yml fajlovi
Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.