Articles

Drupal-ն ունի հզոր պատկերի կառավարման համակարգ, որը թույլ է տալիս ստեղծել պատկերի ոճեր, որոնք կարող են կիրառել տարբեր էֆեկտներ պատկերի վրա և ստեղծել սկզբնական պատկերից դուրս աշխատող արտադրյալներ։ Այս ֆունկցիոնալությունը կարող է օգտագործվել թեմաներում, որոնք ցանկանում են ներառել պատկերի ոճերի հավաքածու, ստեղծված հատուկ տվյալ թեմայի համար, փոխարենը՝ օգտագործելու արմատի կողմից տրամադրվածները։
Պատկերի ոճը ձեր թեմայի հետ միացնելու գործընթացը նման է ռեգուլյար կոնֆիգուրացիայի ներառմանը մոդուլում։


Շատ ծրագրավորողներ նախընտրում են վերնագրի և ստորագրի կոդերը պահել առանձին ֆայլում և կանչել այդ ֆայլը page.html.twig-ում։
Процесс
Ենթադրենք, ձեր թեմայի թղթապանակում ստեղծել եք հետևյալ ֆայլը վերնագրի համար՝
THEME_NAME/templates/includes/header.html.twig
Եվ այժմ ցանկանում եք ներառել այս ֆայլը հետևյալում՝
page.html.twig
Խորհուրդ տրվող մեթոդ
Drupal 8 թեմաների ճիշտ մեթոդը Twig անունների տարածքները օգտագործելն է՝ հայտարարելու համար ընթացիկ թեմայի "templates" պանակը։ Ահա օրինակ՝


Շատ Twig տեմպլեյթներ կունենան մեկ կամ մի քանի Attribute օբյեկտ, որոնք փոխանցվում են որպես փոփոխականներ։ Attribute օբյեկտի նպատակն է պահել HTML հատկանիշների հավաքածու, ծրագրավորողին տրամադրելով օգտակար մեթոդներ տվյալների հետ աշխատելու համար և հեշտությամբ տպելու հատկանիշները։ Օրինակ՝ attribute.addClass('myclass') հեշտացնում է մի դաս ավելացնելը առանց տեքստերի կոնկատենացիայի մասին անհանգստանալու։
Սովորաբար հատկանիշները տեմպլեյթում պետք է ունենան այսպիսի տեսք՝


Ինչպես Drupal 7-ում, դուք կարող եք ազդել որոշակի HTML-ի արտածման վրա նախապատրաստման ֆունկցիաների միջոցով։ Օրինակ, եթե ցանկանում եք ավելացնել դաս մենյուին և նախընտրում եք դա անել PHP մակարդակով, կարող եք դա անել։ Սա լավ միջոց է թեմային առնչվող նշագրման փոփոխման համար, բայց եթե ցանկանում եք ստեղծել թեմայից անկախ նշագրում, ավելի լավ է գրել ձեր սեփական մոդուլը։
(Նշում․ այստեղ «mytheme»-ը ձեր թեմայի մեքենայական անունն է, օրինակ՝ «bartik»։)
Նախապատրաստման ֆունկցիաների հետ աշխատելու համար՝
1. Ստեղծեք կամ խմբագրեք ձեր թեմայի տոպրակին պատկանող mytheme.theme ֆայլը։


Drupal 8-ում breakpoints-ների խմբագրման համար օգտագործողի ինտերֆեյս չկա։ Քանի որ breakpoints-ները սահմանված են կոնֆիգուրացիոն ֆայլերում, նաև հնարավոր չէ տրամադրել օգտագործողի ինտերֆեյս contrib-ում։


Drupal ադմինիստրատիվ հատվածում յուրաքանչյուր թեմայի համար կա իր կարգավորումների էջը՝ հասցեով admin/Appearance/Settings/themeName։ Այդ էջը պարունակում է ֆորմա ստանդարտ կարգավորումներով, օրինակ՝ «Նշանաբանի պատկերակի կարգավորումներ» և «Կարճ հղման պատկերակի կարգավորումներ»։


Սա Drupal 8-ի որոշ առավել նշանակալի փոփոխությունների ցուցակն է, որոնք ազդում են թեմայի վրա։


Հիմնական դասերի փոփոխություններ
Օգնավոր դասերի պարզեցված անուններ՝ "element-x"
Drupal 7-ը ներկայացրեց մի քանի նոր դասեր՝ element-hidden, element-invisible և element-focusable։ Հեշտ չէր հասկանալ նրանց անուններից, թե ինչ են անում այդ դասերը, այդ պատճառով դասերի անունները փոխվել են։ Նոր անունները պետք է հեշտացնեն դասերի հասկացումը և ավելի համապատասխանեն HTML 5 Boilerplate՝ HTML 5-ի հանրահայտ միջավայրին։ Ահա փոխարկման և օգտագործման աղյուսակը․


Այս փաստաթուղթը օգտագործվել է Drupal 8-ի Twig փոխարկման գործընթացի մեծ մասի ընթացքում և կարող է օգտակար լինել նաև ձեր սեփական թեմաները և մոդուլները թարմացնելու համար՝ օգտագործելով Twig տեմպլեյթ շարժիչը Drupal 8-ում։
Նշում․ Twig-ով բոլոր աշխատանքները հիմա կատարվում են Drupal արմատային խնդրների հերթում։ Օգտագործեք միայն Twig փոխարկման sandbox-ը նախօրոք փոխարկված տեմպլեյթներն ու ֆունկցիաները գտնելու համար։
Հիմնական մասնակցողների քայլերը՝


Ավտոմատացման գործիքների օգտագործումը հեշտացնում է թեմաների ստեղծման գործընթացը։ Այստեղ մենք պատրաստվում ենք օգտագործել gulp js՝ օգտվողի թեմայի ավտոմատացման գործիք ստեղծելու համար։
Gulp 3.x և Node 10.x և ավելի ցածր տարբերակների հետ աշխատանք
1. Node.js-ի տեղադրում
Ներբեռնեք և տեղադրեք NodeJS-ի վերջին տարբերակը nodejs.org կայքից։ Տեղադրման գործընթացը կարող է տարբերվել կախված ձեր օպերացիոն համակարգից։
2. Տեղադրեք Gulp
