logo

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

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

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

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

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

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

Scroll

Drupal 7 - Աշխատանք տվյալների բազայի հետ PHP PDO-ի միջոցով

12/05/2025, by Ivan

Անցում կատարելով Drupal 7-ի վրա՝ մենք անցնում ենք նոր Drupal տվյալների բազայի աբստրակցիայի շերտի API-ի, որը կառուցված է PDO-ի հիման վրա։ PDO-ն վաղուց արդեն օգտագործվում է ինչպես Zend framework-ում, այնպես էլ բազմաթիվ այլ PHP ֆրեյմվորկներում։ Ամեն ինչ շատ հարմար էր Drupal 6-ում՝ SQL հարցումներ գրելու առումով, բայց ի՞նչու է մեզ պետք ինչ-որ նոր բան։

Եկեք նախ պարզենք՝ ի՞նչ է PDO-ն։

Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 1 - drupal db api

12/05/2025, by Ivan

Եթե դուք գրել եք մոդուլներ Drupal-ի 6-րդ տարբերակի համար, ապա ձեզ համար դժվար չի լինի անցում կատարել դեպի Drupal 7-ի database API: Նոր DB API-ն աշխատում է PHP-ի PDO ընդլայնման հիման վրա, ինչը նրան հնարավորություն է տալիս աշխատել տարբեր տվյալների բազաների հետ, ինչպիսիք են MySQL, PostgreSQL, MSSQL և հնարավոր է նաև Oracle։ Պարզության մասին դժվար է խոսել, քանի որ պետք է սովորել նոր շարահյուսությանը, SQL հարցում գրելն ավելի սովորական է։

Ահա մի հատված պաշտոնական փաստաթղթերից՝

Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 2 - Տվյալների բազայի կարգավորում

12/05/2025, by Ivan

ԲԴ-ի հետ կապի սահմանման հիմնական միջոցը $databases զանգվածն է, որը գտնվում է settings.php ֆայլում։ Ինչպես ցույց է տալիս անունը, $databases թույլ է տալիս սահմանել բազմաթիվ կապեր տվյալների բազաների հետ։ Այն նաև աջակցում է մի քանի նպատակների սահմանումը։ Կապը չի բացվում (կապի օբյեկտ չի ստեղծվում), մինչև առաջին անգամ որևէ կոդի հատված հարցում չկատարի տվյալների բազային։

Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 3 - Ստատիկ հարցումներ (SELECT)

12/05/2025, by Ivan

Drupal-ում հարցման ամենընդհանուր ձևը ստատիկ հարցումն է։ Ստատիկ հարցումը բառացիորեն փոխանցվում է տվյալների բազային։ Միայն ընտրության հարցումը (select) կարող է լինել ստատիկ։

Ստատիկ հարցումներ պետք է օգտագործել միայն շատ պարզ դեպքերում։ Եթե անհրաժեշտ է գրավել բարդ հարցում, դինամիկ ստեղծվող կամ փոփոխվող հարցում՝ օգտագործեք դինամիկ հարցումներ։

Պարզ ճանապարհ ստատիկ հարցում կատարելու՝ մեթոդի միջոցով՝

<?php
$result = $conn->query("SELECT nid, title FROM {node}");
?>

Նախընտրելի է օգտագործել գործընթացային փաթեթավորիչը՝

Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 4 - Դինամիկ հարցումներ (SELECT)

12/05/2025, by Ivan

Հավանաբար մենք մոտեցել ենք Drupal-ի Database API-ի ամենահետաքրքիր հատվածին՝ դինամիկ հարցումներին: Դրանք անվանվում են դինամիկ, քանի որ Drupal-ը դինամիկ կերպով ավելացնում է հարցման տեքստը: Բոլոր ներմուծման, թարմացման, ջնջման կամ միավորման հարցումները կարող են լինել դինամիկ: Ընտրության հարցումները կարող են լինել թե՛ դինամիկ, թե՛ ստատիկ: Այնուամենայնիվ, խորհուրդ է տրվում օգտագործել դինամիկ հարցումներ՝ նույնիսկ ընտրության համար:

Ինչից է բաղկացած Drupal 7 մոդուլը։

12/05/2025, by Ivan

Նախքան սկսել մեր մոդուլի ստեղծումը, ես դեռ մի քիչ կպատմեմ Drupal API-ի հնարավորությունների մասին։ API-ն տալիս է լայն հնարավորություններ՝ աշխատելու Տաքսոնոմիայի, նոդերի, օգտագործողների, ԲԴ մուտքագրման և արտածման հետ։ Դրուպալում գոյություն ունի հուկերի համակարգ, որը նախատեսված է մոդուլների և միջուկի, ինչպես նաև մոդուլների միջև փոխկապակցության համար։ Հուկը հետադարձ կանչվող ֆունկցիա է (callback), այսինքն՝ երբ կոդի կատարումը հասնում է հուկին, կատարվում է մեր ֆունկցիայի կցում՝ որը մենք գրում ենք մեր մոդուլում։ Այդպես մենք կարող ենք մշակել օգտատիրոջ տվյալները, մենյուները, տաքսոնոմ

Drupal-ում մոդուլի ստեղծում, արագ մեկնարկ

12/05/2025, by Ivan

Սկսենք api.drupal.org կայքից, բացեք hook_node_presave() հուկի էջը, որը գործարկվում է նախքան նոդի ավելացումը։

http://api.drupal.org/api/drupal/modules!node!node.api.php/function/hook_node_validate/7

Հուքերը թույլ են տալիս մեզ ներդնել մեր կոդը Դրուպալի ընթացիկ գործընթացների մեջ, ավելացնել ստուգումներ, տվյալների դաշտեր, ձևերի տարրեր և այլն։

Ավելացնենք մեր մոդուլը sites/all/modules թղթապանակում՝ հետևյալ կառուցվածքով․

Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 12 - Հարցման պայմաններ (WHERE, HAVING, LIKE)

12/05/2025, by Ivan

Հարցման պայմանները թույլ են տալիս ընտրել միայն այն գրառումները, որոնք համապատասխանում են որոշակի սահմանափակումներին, օրինակ՝ երկու շաբաթից ավելի վաղ չստեղծված նոդերը, կամ տերմինները, որոնցում կա "դրուպալ" բառը։ SQL-ում մենք օգտագործում ենք WHERE և HAVING՝ սահմանափակումներ կիրառելու համար SELECT, UPDATE, DELETE հարցումների վրա։ Դինամիկ հարցումներում ևս իրականացված է պայմանների հետ աշխատելու մեխանիզմ։ Այս մեխանիզմը նույն կերպ է աշխատում բոլոր երեք տեսակի հարցումների համար՝ SELECT, UPDATE, DELETE։

Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 11 - MERGE հարցումներ

12/05/2025, by Ivan

Միավորող հարցումները հատուկ հիբրիդ տեսակի հարցումներ են։ Չնայած SQL 2003-ում սահմանվել է այս հարցումների շարահյուսությունը, իրականում չկան տվյալների բազաներ, որոնք աջակցում են այդ շարահյուսությանը։ Այնուամենայնիվ, տվյալների բազաների մեծ մասը տրամադրում է այս ֆունկցիոնալության այլընտրանքային իրականացում՝ օգտագործելով յուրահատուկ շարահյուսություն։ Drupal-ում միավորող հարցման կոնստրուկտորը աբստրակցիա է իրականացնում այս գաղափարի շուրջ՝ կառուցելով այնպիսի օբյեկտ, որը հնարավոր կլինի կոմպիլացնել ըստ կոնկրետ բազայի առանձնահատկությունների։