logo

Լրացուցիչ Բլոկների Տեսակներ (EBT) - Դասավորության Կառուցողի նոր փորձառություն❗

Լրացուցիչ Բլոկների Տեսակներ (EBT) - ձևավորված, կարգավորելի բլոկների տեսակներ՝ սլայդշոուներ, ներդիրներ, քարտեր, բացվող ցանկեր և շատ ուրիշներ։ Ներառված կարգավորումներ՝ ֆոնի, DOM տուփի, JavaScript փլագինների համար։ Փորձեք դասավորությունների կառուցման ապագան արդեն այսօր։

EBT մոդուլների ցուցադրական տարբերակներ Ներբեռնել EBT մոդուլները

❗Լրացուցիչ Պարբերությունների Տեսակներ (EPT) - Պարբերությունների նոր փորձառություն

Լրացուցիչ պարբերության տեսակներ (EPT) - անալոգիական պարբերության վրա հիմնված մոդուլների հավաքակազմ։

EPT մոդուլների ցուցադրական տարբերակներ Ներբեռնել EPT մոդուլները

Scroll

Twig կաղապարների անվանման կոնվենցիաներ

19/06/2025, by Ivan

Menu

Drupal-ը բեռնաթափում է կաղապարները՝ հիմնվելով որոշակի անվանման կոնվենցիաների վրա։ Սա թույլ է տալիս ձեզ կարգավորել կաղապարները՝ դրանք ձեր թեմայի մեջ ավելացնելով և տալով կոնկրետ անուններ։

Կաղապարը ավելացնելուց հետո պետք է մաքրել քեշը, որպեսզի Drupal-ը հայտնաբերի նոր կաղապարը։

Դուք կարող եք դեբագավորել Twig կաղապարները՝ հասկանալու համար, թե որ կաղապարն է օգտագործվում նշված էլեմենտի ցուցադրման համար։ Ավելին Twig-ի դեբագավորման մասին այստեղ։

Այս էջում ներկայացված են հիմնական HTML կառուցվածքի, էջի, տարածաշրջանների, բլոկների, հանգույցների, դաշտերի և այլ հիմնական բաղադրիչների անվանման կոնվենցիաները։ (Օգուտ է, որ կարելի է ստեղծել սեփական կաղապարային անունների առաջարկներ՝ օգտագործելով hook_theme_suggestions_HOOK_alter ֆունկցիան։)

HTML (հատված <head>)

HTML կաղապարը ապահովում է HTML էջի հիմնական կառուցվածքը՝ ներառյալ <head>, <title> և <body> տեգերը։

Հիմնական կաղապար՝ html.html.twig (նախադրյալ տեղակայում՝ core/modules/system/templates/html.html.twig)

Հետևյալ օրինակները ցույց են տալիս, թե ինչպես կարելի է վերակազմակերպել հիմնական կաղապարը՝

  1. html--[ներքին_հասցե].html.twig
  2. html--node--[հանգույցի_id].html.twig
  3. html.html.twig

Տես html.html.twig API-ի փաստաթուղթը

Էջի կաղապար

Կաղապար՝ page--[front|internal/path].html.twig
Հիմնական կաղապար՝ page.html.twig (core/modules/system/templates/page.html.twig)

Առաջարկները բազմաթիվ են։ Առաջնահերթ է գլխավոր էջը։ Մնացածը հիմնված է ընթացիկ էջի ներքին ճանապարհի վրա։ Գլխավոր էջի կարգավորումները կարելի է գտնել Administration > Configuration > System > Site information (http://example.com/admin/config/system/site-information)։ Գլխավոր էջի կաղապարն է page--front.html.twig։
Ներքին ճանապարհը չպետք է շփոթել ուղու մականունների հետ, որոնք չեն հաշվում։

Առաջարկվող ֆայլերի ցուցակը դասավորված է կոնկրետության կարգով՝ հիմնված ներքին ճանապարհի վրա։ Յուրաքանչյուր ուղու տարրին տրվում է մեկ առաջարկ, սակայն թվային տարրերը չեն փոխանցվում հաջորդ առաջարկներին։ Օրինակ՝ «http://www.example.com/node/1/edit» հասցեն կստեղծի հետևյալ առաջարկները.

  1. page--node--edit.html.twig
  2. page--node--1.html.twig
  3. page--node.html.twig
  4. page.html.twig

Տես page.html.twig API փաստաթուղթը։ Հետեւյալում նաև դիտեք վերանորոգման էջի կաղապարը։

Տարածքներ (Regions)

Կաղապար՝ region--[region].html.twig
Հիմնական կաղապար՝ region.html.twig (core/modules/system/templates/region.html.twig)

Տարածքի կաղապարը օգտագործվում է, երբ էջի տվյալ տարածքում կա բովանդակություն, որը կարող է լինել թե՛ բլոկներից, թե՛՝ hook_page_top() կամ hook_page_bottom() նման ֆունկցիաներից։ Տարածքների հնարավոր անունները սահմանվում են թեմայի .info.yml ֆայլով։

Տես region.html.twig API փաստաթուղթը

Բլոկներ

Կաղապար՝ block--[module]--[delta].html.twig
Հիմնական կաղապար՝ block.html.twig (core/modules/block/templates/block.html.twig)

  1. block--[module]--[delta].html.twig
  2. block--[module].html.twig
  3. block.html.twig

«module»-ը մոդուլի անունն է, «delta»-ն՝ տվյալ բլոկի մոդուլի կողմից տրված ներքին նույնականացումն է։

Օրինակ՝ «block--block--1.html.twig» կօգտագործվի այն առաջին բլոկի համար, որը ստեղծվել է block մոդուլի կողմից id=1-ով, և ավելացվել է բլոկների ադմինիստրատիվ էջում։ Դրանց համար, որոնք հատուկ տարածաշրջանային բլոկներ են, Drupal 8-ում առկա չեն համապատասխան կաղապարներ։

Եթե ունեք բլոկ, որը ստեղծվել է «custom» անունով ձեր սեփական մոդուլով, և delta-ն «my-block» է, ապա թեմայի կաղապարի առաջարկը կլինի «block--custom--my-block.html.twig»։

Օրինակ՝ եթե ձեր բլոկը ստեղծվել է Views մոդուլի կողմից, որը կոչվում է «front_news», և ունի block_1 տեսանելիության նույնականացում, ապա թեմայի կաղապարի առաջարկը կլինի՝ block--views-block--front-news-block-1.html.twig (գուշացեք, երբ block_1 կամ front_news պարունակում են ստորակետեր, դրանք պետք է փոխարինվեն միակ ճարմանդով)`

Նշեք, որ այս կոնտեքստում մոդուլի անունները զգայուն են մեծատառ/փոքրատառի նկատմամբ։ Օրինակ, եթե ձեր մոդուլն է «MyModule», առավել ընդհանուր առաջարկը կլինի «block--MyModule.html.twig»։

Տես block.html.twig API փաստաթուղթը

Հանգույցներ (Nodes)

Կաղապար՝ node--[content-type|nodeid]--[viewmode].html.twig
Հիմնական կաղապար՝ node.html.twig (core/modules/node/templates/node.html.twig)

Թեմայի առաջարկները հիմնված են հետևյալների վրա՝ առավել կոնկրետից մինչև ամենաքիչ կոնկրետը։ Drupal-ը կօգտագործի առավել կոնկրետ գտած կաղապարը․

  1. node--[nodeid]--[viewmode].html.twig
  2. node--[nodeid].html.twig
  3. node--[content-type]--[viewmode].html.twig
  4. node--[content-type].html.twig
  5. node--[viewmode].html.twig
  6. node.html.twig

Նշեք, որ ներքին դաշտի անունի ստորակետները (_) փոխարինվում են ճարմանդներով (-)։

Տես node.html.twig API փաստաթուղթը

Տաքսոնոմիայի տերմիններ (Taxonomy terms)

Կաղապար՝ taxonomy-term--[vocabulary-machine-name|tid].html.twig
Հիմնական կաղապար՝ taxonomy-term.html.twig (core/modules/taxonomy/templates/taxonomy-term.html.twig)

Թեմայի առաջարկները կառուցված են առավել կոնկրետից մինչև ամենաքիչ կոնկրետը՝ հետևյալների հիման վրա։ Drupal-ը կօգտագործի առավել կոնկրետ կաղապարը՝

  1. taxonomy-term--[tid].html.twig
  2. taxonomy-term--[vocabulary-machine-name].html.twig
  3. taxonomy-term.html.twig

Նշեք, որ բառարանի մեքենայական անունի ստորակետները փոխարինվում են ճարմանդներով։

Տես taxonomy-term.html.twig API փաստաթուղթը

Դաշտեր (Fields)

Կաղապար՝ field--[[type|name]|[entity-type]--[field-name|content-type]].html.twig
Հիմնական կաղապար՝ field.html.twig (core/modules/system/templates/field.html.twig)

Թեմայի առաջարկները դասավորված են առավել կոնկրետից մինչև ամենաքիչ կոնկրետ՝ հետևյալ կարգով։ Drupal-ը կօգտագործի առավել կոնկրետ կաղապարը՝

  1. field--node--[field-name]--[content-type].html.twig
  2. field--node--[field-name].html.twig
  3. field--node--[content-type].html.twig
  4. field--[field-name].html.twig
  5. field--[field-type].html.twig
  6. field.html.twig

Նշեք, որ դաշտի մեքենայական անունի ստորակետները (_) փոխարինվում են ճարմանդներով (-): Մի՛ մոռացեք օգտագործել «field-» որպես նախածանց օգտատիրոջ դաշտերի անվանումներում, օրինակ՝ field--field-phone.html.twig։

Տես field.html.twig API փաստաթուղթը

Մեկնաբանություններ (Comments)

Կաղապար՝ comment--[comment-field-name]--[node-type].html.twig
Հիմնական կաղապար՝ comment.html.twig (core/modules/comment/templates/comment.html.twig)

Ավելացել է աջակցություն՝ comment--[comment-field-name]--[node-type].html.twig ֆայլեր ստեղծելու համար, որպեսզի որոշակի հանգույցի տիպի մեկնաբանությունները ձևավորվեն այլ կերպ, քան կայքի մնացած մեկնաբանությունները։ Օրինակ՝ հոդվածի տիպի հանգույցի մեկնաբանությունը կլինի «comment--field-comments--article.html.twig»։

Տես comment.html.twig API փաստաթուղթը

Մեկնաբանության օվերքերներ

Կաղապար՝ field--node--[comment-field-name]--[content-type].html.twig
Հիմնական կաղապար՝ field--comment.html.twig

Ֆորումներ (Forums)

Կաղապար՝ forums--[[container|topic]--forumID].html.twig
Հիմնական կաղապար՝ forums.html.twig (core/modules/forum/templates/forums.html.twig)

Թեմայի առաջարկները կազմված են առավել կոնկրետից մինչև ամենաքիչ կոնկրետ։ Drupal-ը կօգտագործի առավել կոնկրետ կաղապարը՝

Ֆորումի կոնտեյներների համար՝

  1. forums--containers--[forumid].html.twig
  2. forums--[forumid].html.twig
  3. forums--containers.html.twig
  4. forums.html.twig

Ֆորումի թեմաների համար՝

  1. forums--topics--[forumid].html.twig
  2. forums--[forumid].html.twig
  3. forums--topics.html.twig
  4. forums.html.twig

Տես forums.html.twig API փաստաթուղթը

Վերանորոգման էջ (Maintenance page)

Կաղապար՝ maintenance-page--[offline].html.twig
Հիմնական կաղապար՝ maintenance-page.html.twig (core/modules/system/templates/maintenance-page.html.twig)

Դա կիրառելի է, երբ տվյալների բազան հանկարծակի հասանելի չէ։ Օգնում է ցուցադրել օգտատերերին համակրելի էջ առանց սխալների։ Maintenance page թեման պետք է ճիշտ կազմաձևված լինի։

Տես maintenance-page.html.twig API փաստաթուղթը

Նշեք, որ maintenance-page--offline.html.twig ֆայլը ներկայում չի ցուցադրվում, երբ տվյալների բազան անհասանելի է։ Հետևվող խնդիր՝ #2720109: maintenance-page-offline.html.twig չի հայտնաբերվում, երբ համակարգը օֆլայն է։

Search results (Որոնման արդյունքներ)

Կաղապար՝ search-result--[search-type].html.twig
Հիմնական կաղապար՝ search-result.html.twig (core/modules/search/templates/search-result.html.twig)

search-result.html.twig-ն է միավորի որոնման արդյունքների լարումը։ Որոնման տեսակից կախված՝ տարբեր առաջարկներ են։ Օրինակ՝ «example.com/search/node/Search+Term» կօգտագործի search-result--node.html.twig։ «example.com/search/user/bob»-ը կօգտագործի search-result--user.html.twig։ Մոդուլները կարող են ընդլայնել որոնման տեսակները՝ ավելացնելով նոր առաջարկներ։

Տես search-result.html.twig API փաստաթուղթը

Views

Բոլոր Views կաղապարները հնարավոր է վերակազմակերպել՝ օգտագործելով views-ի անունը, դիտման նույնականացուցիչը, դիտման տեսակը կամ դրանց համակցությունը։

Յուրաքանչյուր views-ի համար օգտագործվում է առնվազն երկու կաղապար։ Առաջինը օգտագործվում է բոլոր views-երի համար՝ views-view.html.twig։

Երկրորդը որոշվում է դիտման ընտրված ոճով։ Որոշ դիտումների առանձնահատկություններ կարող են փոխել օգտագործվող ոճը, օրինակ՝ ընդհանուր տեսքը փոփոխում է ոճը հատուկ ամփոփման ոճի։

Բոլոր views-երի նախնական ոճն է views-view-unformatted.html.twig։

Շատ ոճեր ցուցադրում են յուրաքանչյուր տողի իրական արտածումը՝ ըստ տողի ոճի։ Նախնական տողի ոճը views-view-fields.html.twig է։

Կաղապարներ՝

  • views-view--[viewid]--[view-display-id].html.twig
  • views-view--[viewid]--[view-display-type].html.twig
  • views-view--[view-display-type].html.twig
  • views-view--[viewid].html.twig
  • views-view.html.twig

Հիմնական կաղապար՝ views-view.html.twig (core/themes/stable/templates/views/views-view.html.twig)

Օրինակ՝ եթե ցանկանում եք վերակազմակերպել «views-view.html.twig» կաղապարը ձեր դիտման համար, թույլատրելի անուններն են՝

  • views-view--[viewid]--[view-display-id].html.twig
  • views-view--[viewid]--page.html.twig
  • views-view--block.html.twig
  • views-view--[viewid].html.twig
  • views-view.html.twig

views-view-field.html.twig հիման վրա կաղապարներն ունեն postfix՝ դիտման դաշտի նույնականացուցիչով (ինչպես փոփոխվող կաղապարներում)՝ մեկ դաշտի ցուցադրման համար՝

  • views-view-field--[viewid]--[view-display-id]--[fieldid].html.twig
  • views-view-field--[viewid]--page--[fieldid].html.twig
  • views-view-field--block--[fieldid].html.twig
  • views-view-field--[fieldid].html.twig
  • views-view-field.html.twig

Օրինակ բոլոր կաղապարների, որոնք փորձարկվում են հետևյալ դեպքում՝

Դիտում՝ foobar անվամբ։ Ոճ՝ անփոփոխ։ Տողի ոճ՝ դաշտեր։ Ցուցադրում՝ էջ։

  • views-view--foobar--page.html.twig
  • views-view--page.html.twig
  • views-view--foobar.html.twig
  • views-view.html.twig
  • views-view-unformatted--foobar--page.html.twig
  • views-view-unformatted--page.html.twig
  • views-view-unformatted--foobar.html.twig
  • views-view-unformatted.html.twig
  • views-view-fields--foobar--page.html.twig
  • views-view-fields--page.html.twig
  • views-view-fields--foobar.html.twig
  • views-view-fields.html.twig

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.