Թեմայի սահմանում .info.yml ֆայլի միջոցով
Drupal 8 թեմա ստեղծելու համար նախ անհրաժեշտ է ստեղծել THEMENAME.info.yml ֆայլ, որը տրամադրում է ձեր թեմայի մետատվյալները Drupal-ում։ Դա նման է մոդուլների և տեղադրման պրոֆիլների սահմանմանը, ուստի կարևոր է .info.yml ֆայլում «type» բանալին սահմանել որպես «theme», որպեսզի այն տարբերակվի։
Այս էջը պարունակում է THEMENAME.info.yml ֆայլի օրինակ և ֆայլում պարունակվող տեղեկությունների ակնարկ։
Ստեղծեք .info.yml ֆայլը
Ստեղծեք .info.yml ֆայլը ձեր թեմայի արմատային թղթապանակում։ Թղթապանակի անունը պետք է համընկնի .info.yml ֆայլի անվան հետ։ Ուրեմն, եթե ձեր թեման կոչվում է «Fluffiness», թղթապանակը կոչվելու է «fluffiness/», իսկ .info.yml ֆայլը՝ «fluffiness/fluffiness.info.yml»։ Եթե ֆայլը առկա է նվազագույն անհրաժեշտ հատկություններով (անուն, տեսակ և կոր), ձեր թեման կհայտնվի ձեր կայքի «Կառավարում > Ցուցադրություն» բաժնում (http://example.com/admin/appearance)։ Մի մոռացեք ընտրել թեմայի անուն, որը դեռ օգտագործված չէ մոդուլի կամ այլ թեմայի կողմից։ Թեմայի անունը պետք է եզակի լինի Drupal կարգավորումներում։ Հակառակ դեպքում թեմայի բաղադրիչները ճիշտ չեն բեռնվի։
Թեմայի անվանումում բացատները փոխարինեք ստորակետերով թղթապանակի (և .info.yml ֆայլի) անվանումում։
Եթե չեք ծանոթ YAML ֆայլերի կառուցվածքին, կարդացեք YAML ֆայլերի ֆորմատի համառոտ ներկայացումը։
- Տաբերը ԱՐԴՅՈՒՆՔ ՉԵՆ։ Օգտագործեք ՄԻԱՅՆ բացատներ։
- Գույքներ և ցուցակներ ՊԵՏՔ Է ունենան երկու (2) բացատ մուտք։
Օրինակ
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
Ձեր Drupal կայքում կարող եք գտնել .info.yml ֆայլերի ավելի շատ օրինակներ՝ նայելով կորում ներառված թեմաներին։ Օրինակ բացեք core/themes/stark թղթապանակը և գտնեք stark.info.yml ֆայլը։
Բանալի/արժեք զույգեր
Հետևյալ բանալի/արժեք զույգերը տրամադրում են ձեր թեմայի մետատվյալները և սահմանում որոշ հիմնական ֆունկցիաներ։ (Տե՛ս \Drupal\Core\Extension\InfoParserInterface::parse().)
- name (պարտադիր)
- type (պարտադիր)
- description (ոչ պարտադիր)
- package (ոչ պարտադիր)
- core (պարտադիր)
- php (ոչ պարտադիր)
- version (ոչ պարտադիր)
- libraries (ոչ պարտադիր)
- libraries-override (ոչ պարտադիր)
- libraries-extend (ոչ պարտադիր)
- base theme (խորհուրդ է տրվում)
- hidden (ոչ պարտադիր)
- engine (ոչ պարտադիր)
- logo (ոչ պարտադիր)
- screenshot (ոչ պարտադիր)
- regions (ոչ պարտադիր)
- regions_hidden (ոչ պարտադիր)
- features (ոչ պարտադիր)
- stylesheets-remove (չի առաջարկվում)
- ckeditor_stylesheets (ոչ պարտադիր)
name - անուն (պարտադիր)
Մարդկանց ընթեռնելի անուն, որը կցուցադրվի «Ցուցադրություն» էջում, որտեղ ակտիվացվում է թեման։
name: Fluffiness
type - տեսակ (պարտադիր)
Սահմանում է ընդլայնման տեսակը՝ «մոդուլ», «թեմատիկ» կամ «պրոֆիլ»։ Թեմաների համար դա միշտ պետք է լինի «theme»։ Բացահայտումն case-sensitive է։
type: theme
description - նկարագրություն (ոչ պարտադիր)
Նկարագրություն, որը ցուցադրվում է «Ցուցադրություն» էջում։
description: An extra cuddly Drupal theme available in grey and blue.
package - փաթեթ (ոչ պարտադիր)
Սահմանում է «փաթեթը», որը թույլ է տալիս խմբագրել թեմաները։
package: Core
core (պարտադիր)
Սահմանում է Drupal-ի սերնը, որի հետ համատեղելի է թեման։
core: 8.x
php (ոչ պարտադիր)
Պահանջվող նվազագույն PHP տարբերակը։ Նախապես օգտագործվում է DRUPAL_MINIMUM_PHP կոնստանտի արժեքը։
php: 5.5.9
version - տարբերակ (ոչ պարտադիր)
Սահմանում է տարբերակը։ Drupal.org-ում տեղադրված թեմաների համար տարբերակի համարը լրացվում է փաթեթավորման սցենարով։ Մի նշեք ձեռքով, կամ ամբողջությամբ ջնջեք տողը։
version: 8.x-1.0
libraries - գրադարաններ (ոչ պարտադիր)
Գրադարանների ցուցակ (որոնք կարող են պարունակել և CSS, և JavaScript ռեսուրսներ), որոնք ավելացվում են բոլոր էջերին, որտեղ թեման ակտիվ է։ Ավելին թեմաների և ռեսուրսների գրադարանների մասին։
libraries: - fluffiness/global-styling
libraries-override - գրադարանների վերաշարադրումը (ոչ պարտադիր)
Գրադարանների և ռեսուրսների հավաքածու վերաշարադրելու համար։ Ավելին վերաշարադրող և ընդլայնող գրադարանների մասին։
libraries-override: contextual/drupal.contextual-links: css: component: /core/themes/stable/css/contextual/contextual.module.css: false
libraries-extend - գրադարանների ընդլայնում (ոչ պարտադիր)
Գրադարանների և ռեսուրսների հավաքածու, որոնք ավելացվում են գրադարան միացնելու ժամանակ։ Ավելին վերաշարադրող և ընդլայնող գրադարանների մասին։
libraries-extend: core/drupal.user: - classy/user1 - classy/user2
base theme - հիմնական թեմա (խորհուրդ է տրվում)
Թեման կարող է ժառանգել ռեսուրսներ այլ թեմայից՝ նշելով այն որպես հիմնական թեմա։ Խորհուրդ է տրվում օգտագործել classy կամ stable (նախկինում՝ stable, եթե բանալին չի նշված), որպեսզի ձեր թեման ժառանգի հիմնական թեմայի ապագայում կատարվող փոփոխությունները։
base theme: classy
hidden (ոչ պարտադիր)
Սահմանում է, թե արդյոք թեման պետք է թաքցվի «Ցուցադրություն» էջից, որպեսզի չլինի հնարավոր ակտիվացնել կամ անջատել UI-ի միջոցով։
hidden: true
engine (ոչ պարտադիր)
Թեմային մոտիվային շարժիչ։ Նախագծված է օգտագործել "twig" ըստ իդեալ։
engine: twig
logo - լոգո (ոչ պարտադիր)
Տեսեք փոփոխության գրառումը՝ https://www.drupal.org/node/2939152
Լոգոյի ուղին համեմատած թեմայի .info.yml ֆայլի։ Նախնականում Drupal-ը կփնտրի "logo.svg" ֆայլը ձեր թեմայի թղթապանակի արմատում և կօգտագործի այն որպես թեմայի լոգո։
logo: images/logo.png
screenshot - էկրանային նկար (ոչ պարտադիր)
Էկրանային նկարի ուղին համեմատած թեմայի .info.yml ֆայլի։ Էկրանային նկարները պետք է լինեն 588x438 պիքսել չափսերով, թեև ցուցադրվում են փոքր չափսով։ Նախնականում Drupal-ը կփնտրի «screenshot.png» ֆայլը ձեր թեմայի արմատում և կօգտագործի այն «Ցուցադրություն» էջում որպես թեմայի պատկեր։
screenshot: fluffiness.png
regions - տարածքներ (ոչ պարտադիր)
Թեմայի տարածքների ցուցակ։ (Նշեք, որ տարածքների բանալիները չեն սկսվում հիպենով։) Ավելին թեմայի տարածքների մասին։
regions: header: Header content: Content sidebar_first: 'First sidebar'
regions_hidden (ոչ պարտադիր)
Ժառանգված տարածքների ցուցակ՝ հեռացնելու համար։
regions_hidden: - sidebar_last
features - հնարավորություններ (ոչ պարտադիր)
Հնարավորությունների ցուցակ՝ ցուցադրվող թեմայի «Կարգավորումներ» էջում։
features: - comment_user_verification - comment_user_picture - favicon - logo - node_user_picture
stylesheets-remove - ոճաթղթերի հեռացում (չի առաջարկվում)
CSS ոճաթղթերի ցուցակ, որոնք պետք է հեռացվեն մյուս մոդուլների կամ թեմաների կողմից բոլոր էջերից, որտեղ թեման ակտիվ է։ Յուրաքանչյուր արժեք պետք է լինի լիարժեք ուղի փաստաթղթի նկատմամբ, որպեսզի բացառվի բազմակի նույնանուն ֆայլերի անորոշությունը։ Երբ ֆայլը մաս է գրադարանի, որը պատկանում է մոդուլին կամ թեմային, կարող եք օգտագործել @module_or_theme_name ֆորմատով տոքեն, որը պետք է նշվի մեջբերման մեջ, քանի որ «@» նշանը YAML-ում հատուկ է։ Նշում. Այս բանալին հին է և հանվելու է Drupal 9-ում։ Մեծ մասամբ պետք է օգտագործել libraries-override։
stylesheets-remove: - core/assets/vendor/normalize-css/normalize.css - '@classy/css/components/tabs.css'
ckeditor_stylesheets (ոչ պարտադիր)
CSS ոճաթղթերի ցուցակ, որոնք ավելացվում են CKEditor-ի շրջանակում։
ckeditor_stylesheets: - https://fonts.googleapis.com/css?family=Open+Sans - css/base/elements.css
Լրացուցիչ տեղեկություններ
- CSS և JavaScript ֆայլերի ավելացում Drupal 8 թեմաներում
- Բոլոր բանալիների ամբողջական նկարագրությունը, որոնք հասանելի են *.info.yml ֆայլում, կարող եք գտնել՝ Թույլ տվեք Drupal 8-ին իմանալ ձեր մոդուլը .info.yml ֆայլի միջոցով։
- Փոփոխության գրառում՝ .info ֆայլերը այժմ .info.yml ֆայլեր են։
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.