6.3. Ստեղծեք ձեր սեփական Drupal թեման՝ հիմնված կայուն թեմայի վրա:
Այս հոդվածից սկսած՝ մենք կստեղծենք մեր թեման Drupal-ում: Դասընթացի այս բաժնում մենք կվերլուծենք Drupal-ի թեմայի հիմունքները, որտեղ ինչ է, ինչպես ներառել և օգտագործել CSS, JavaScript: Ձեր թեման հիմնված կլինի հիմնական թեմանյի վրա: Եթե ցանկանում եք սովորել Drupal, ապա հիմնական թեման հիանալի սկիզբ է: Եթե ցանկանում եք սովորել Drupal, ապա կայուն թեման հիանալի սկիզբ է: Պետք չէ սկսել Bootstrap-ից, անընդհատ հարցեր ու սխալներ կունենաք։ Դասընթացի հաջորդ բաժնում Drupal-ի համար թեմաներ ստեղծելու մեր գիտելիքներով մենք կսկսենք աշխատել Bootstrap-ի հետ։
Ահա պաշտոնական փաստաթղթերը
https://www.drupal.org/theme-guide/8
Ստեղծեք թղթապանակ մեր թեմայի համար
We put all new themes in the / themes folder. You can put folders like in drupal 7 sites / all / themes, but it is best to use the new Drupal file structure and put in the / themes folder.
I will create the folder/themes/drupalbook, you can name your theme as you like:
Մենք բոլոր նոր թեմաները դնում ենք /themes պանակում: Դուք կարող եք տեղադրել այնպես ինչպես անում էինք drupal 7 ում՝ sites/all/ themes, բայց ավելի լավ է օգտագործել Drupal ֆայլի նոր կառուցվածքը և տեղադրել /themes պանակում:
Ես կստեղծեմ թղթապանակը /themes/drupalbook, դուք կարող եք անվանել ձեր թեման այնպես, ինչպես ցանկանում եք.
Ստեղծեք ֆայլ drupalbook.info.yml-ի մասին հիմնական տեղեկություններով
Մեր թեմայի թղթապանակում ստեղծեք առանցքը՝ 8.xhe ֆայլ theme_name.info.yml:
Այս հոդվածը մանրամասն տեղեկատվություն է տրամադրում YAML ձևաչափի վերաբերյալ.
https://en.wikipedia.org/wiki/YAML
Ուշադրություն դարձրեք երկու բանի.
1) Մի օգտագործեք ներդիրներ միայն բացատներ:
2) Ազատ թողնված տեղերը պետք է լնեն 1 կամ 1ից ավել. (օրինակ. name: value, բայց ոչ name:value).
Ավելացրեք սա drupalbook.info.yml ֆայլում:
name: Drupalbook
type: theme
base theme: stable
description: My first Drupal theme.
core: 8.x
core_version_requirement: ^8 || ^9
libraries:
- drupalbook/global-styling
regions:
header: Header
content: Content # Этот регион обязателен
sidebar_first: 'Sidebar first' # Не забываем добавить кавычки
footer: Footer
Արի հասկանանք թե ամեն տողում ինչ է կատարվում.
name - մեր թեմայի անունն է. Մեր թեմայի մեքենայի անվանումը թղթապանակի և ֆայլի անունն է drupalbook.info.yml - drupalbook.
type - նախագծի տեսակը Drupal է, մենք ունենք այս թեման.
base theme - մենք ժառանգում ենք կայուն թեմայից, եթե թեման զրոյից եք ցանկանում սկսել, ապա գրեք false:
description - թեմայի նկարագրությունը, որը ցուցադրվում է ադմինիստրատորի վահանակում.
core - Drupal միջուկի տարբերակը, որի համար այս թեման հարմարացված է:
libraries - այստեղ մենք ներառում ենք գրադարաններ մեր մոդուլում: Մենք դա անում ենք այն ֆայլի միջոցով, որը մենք կստեղծենք հաջորդիվ՝ drupalbook.libraries.yml: Ուշադրություն դարձրեք global-styling ին, մենք այն կօգտագործենք drupalbook.libraries.yml-ում:
regions - մեր թեմայի շրջանները: Պահանջվող բովանդակության տարածաշրջանը, դրա միջոցով ցուցադրվում են Drupal-ի բովանդակությունը: Բացի այդ, եթե տարածաշրջանի անվանումը երկու կամ ավելի բառ է, մի մոռացեք այն չակերտների մեջ դնել։ Մեքենաների անունները տարածաշրջանների համար գրվում են ընդգծման միջոցով:
Եկեք ստեղծենք մեր թեմայի գրադարանը:
Drupalbook.libraries.yml ֆայլ
Ավելացրու այս տողերը drupalbook.libraries.yml ֆայլում:
global-styling:
version: 1.x
css:
theme:
css/style.css: {}
css/print.css: { media: print }
js:
js/custom.js: {}
dependencies:
- core/jquery
Հիմա արի հասկանանք ամեն ինչ տող առ տող:
global-styling - սա հենց այն անունն է, որը մենք դրել ենք drupalbook.info.yml-ում
css - այստեղ մենք ներառում ենք CSS ֆայլեր, նշենք, որ կայքի տպագիր տարբերակի համար մենք նշել ենք media։print
js -այստեղ մենք ներառում ենք javascript ֆայլեր: jQuery-ն ընտրովի է Drupal-ի համար, այնպես որ, եթե մենք ցանկանում ենք օգտագործել jQuery-ն մեր հատուկ JavaScript-ում, մենք դրա համար կախվածություն ենք ավելացնում:
dependencies:
- core/jquery
Ստեղծեք css, js թղթապանակները և դրեք ֆայլերը այնտեղ.
css/style.css
css/print.css
js/custom.js
Քանի որ մենք ժառանգում ենք կայուն թեմայից, կաղապարները նույնպես ժառանգում են դրանից։ Այժմ այցելեք մեր կայքը արտաքին տեսքի բաժնում.
/admin/appearance
մաքրել քեշը և միացնել մեր թեման՝
Այժմ մենք ունենք մեր նոր Drupalbook թեման մեր կայքում.