Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll

Articles

19/04/2025, by Ivan
Miltistep popup form in Drupal

Այս հոդվածում մենք կշարունակենք ծանոթանալ Drupal 8-ի Form API-ին և կստեղծենք բազմափուլ ձև (multi-step form): Մենք արդեն ստեղծել ենք մոդուլի սովորական կարգավորումների ձևը, իսկ բազմափուլ ձևը ստեղծվում է նույնատիպ ձևով՝ օգտագործելով $form_state՝ ձևի փուլերի միջև տվյալները պահելու համար։

Կոդի օրինակները կարող եք գտնել github-ում՝

https://github.com/levmyshkin/drupalbook8

Բազմափուլ ձևի համար անհրաժեշտ է ձևի class ավելացնել՝

/modules/custom/drupalbook/src/Form/MultiStepForm.php

Miltistep popup form in Drupal
19/04/2025, by Ivan
hook_form_alter

Այս դասում մենք կծանոթանանք Drupal Form API-ին և կստեղծենք կարգավորման ձև՝ մոդուլի համար։ Մենք արդեն ստեղծել ենք էջ և բլոկ ցուցադրող մոդուլներ, այժմ եկեք ստեղծենք կարգավորումների ձև, որում կպահպանենք տվյալներ՝ որոշ ծառայության միացման համար։ Ենթադրենք՝ մեզ անհրաժեշտ է կայքում պահպանել API Key և API Client ID, օրինակ՝ Google Maps API-ի համար։

Ծածկագրի օրինակները հասանելի են github-ում.
https://github.com/levmyshkin/drupalbook8

hook_form_alter
19/04/2025, by Ivan
Working with forms in Drupal 8

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

Ծածկագրի օրինակները հասանելի են github-ում.
https://github.com/levmyshkin/drupalbook8

Եկեք սկսենք PHP դաս պարունակող ֆայլ ավելացնելով, քանի որ այսպես են բլոկեր ստեղծվում Drupal-ում հարմարեցված մոդուլի միջոցով։ Ֆայլի ստեղծման գործընթացը նույնն է, ինչ էջի համար դասը ստեղծելիս, ինչպես արեցինք այստեղ․

Working with forms in Drupal 8
19/04/2025, by Ivan
Plugins

Այս դասում մենք կծանոթանանք, թե ինչպես կարելի է ծրագրային եղանակով բլոկեր արտածել սեփական մոդուլի միջոցով Drupal 8-ում։

Կոդի օրինակները կարող եք դիտել GitHub-ում.
https://github.com/levmyshkin/drupalbook8

Սկսենք ֆայլ ավելացնելով, որը պարունակում է PHP դաս։ Այս կերպ են բլոկերը ստեղծվում Drupal-ում՝ սեփական մոդուլի միջոցով։ Ֆայլ ստեղծելու գործընթացը նման է էջի դասի ստեղծմանը, ինչպես արեցինք այստեղ․

Plugins
19/04/2025, by Ivan
Route

Մենք կարող ենք օգտագործել URL-ի պարամետրերը երթուղիների (routes) համար։ Դրանք աշխատում են ճիշտ այնպես, ինչպես Views-ի կոնտեքստային ֆիլտրերը։ Օրինակ՝ մենք կարող ենք URL-ով փոխանցել տարբեր էություների ID-ներ, տեքստային տողեր կամ հերթական ID-ներ՝ բաժանված ստորակետով կամ գումարով։ Այս դասում մենք կփոխանցենք node-ի ID-ն և կցուցադրենք այդ node-ի վերնագիրը և հիմնական բովանդակությունը։

Կոդի օրինակները հասանելի են GitHub-ում՝
https://github.com/levmyshkin/drupalbook8

Route
19/04/2025, by Ivan
documentation

Drupal API-ն սովորելիս հաճախ ձեզ անհրաժեշտ կլինի օգտվել հիմնական փաստաթղթավորումից՝ https://api.drupal.org հասցեում։ Սա Drupal-ի ավտոմատ գեներացված փաստաթղթավորումն է։ Այն պարունակում է ամբողջ տեղեկատվությունը՝ յուրաքանչյուր ֆունկցիայի, դասի, մեթոդի, դրանց սահմանման վայրերի և համառոտ նկարագրության մասին։ Այս կայքում կա նաև API օգնություն։ Խորհուրդ եմ տալիս ծանոթանալ դրա յուրաքանչյուր բաժնին։

API Drupal

documentation
19/04/2025, by Ivan
account

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

Կոդի օրինակները հասանելի են GitHub-ում՝
https://github.com/levmyshkin/drupalbook8

Եկեք սկսենք ավելացնելով նոր YML ֆայլ՝ մեր մոդուլի drupalbook.permissions.yml թղթապանակում՝

account
19/04/2025, by Ivan
Drupal module

Եկեք մեր մոդուլի ստեղծումը սկսենք փոքր-ինչ կարգապահ ձևով։ Շարունակենք բաժանել custom (անհատական) և contributed (ներբեռնված) մոդուլները։ Drupal-ում մոդուլները տեղակայվում են /modules թղթապանակում։ Այժմ այլևս անհրաժեշտ չէ դրանք տեղադրել /sites/all/modules թղթապանակի խորքում, չնայած որ readme-ն նշում է, որ դա աշխատում է։ Օգտագործեք /modules թղթապանակը։ Դրա ներսում ստեղծեք custom և contrib թղթապանակները։ Contrib թղթապանակում կտեղադրվեն drupal.org-ից ներբեռնված մոդուլները, իսկ custom-ում՝ ձեր ստեղծած մոդուլները։

Drupal module
19/04/2025, by Ivan
Drupal Module Development

Այն ամենը, ինչ մենք մինչ այժմ ուսումնասիրել ենք, նման էր Drupal-ի նախորդ տարբերակներին։ Բայց երբ խոսքը վերաբերում է զարգացմանը, ամեն ինչ այլ է։ Թեև արտաքին տեսքով Drupal-ը նման է Drupal 7-ին, ներքուստ այն կառուցված է Symfony-ի բաղադրիչներով, իր սեփական կոմպոնենտներով և բազմաթիվ գրադարաններով։ Հետևաբար, դուք պետք է աշխատեք նոր plugin համակարգի հետ և օգտագործեք PHP-ում օբյեկտակենտրոն ծրագրման (OOP) սկզբունքները։

Drupal Module Development