Բլոգ
Drupal-ում մոդուլի ստեղծում, արագ մեկնարկ
Սկսենք 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)
Հարցման պայմանները թույլ են տալիս ընտրել միայն այն գրառումները, որոնք համապատասխանում են որոշակի սահմանափակումներին, օրինակ՝ երկու շաբաթից ավելի վաղ չստեղծված նոդերը, կամ տերմինները, որոնցում կա "դրուպալ" բառը։ SQL-ում մենք օգտագործում ենք WHERE և HAVING՝ սահմանափակումներ կիրառելու համար SELECT, UPDATE, DELETE հարցումների վրա։ Դինամիկ հարցումներում ևս իրականացված է պայմանների հետ աշխատելու մեխանիզմ։ Այս մեխանիզմը նույն կերպ է աշխատում բոլոր երեք տեսակի հարցումների համար՝ SELECT, UPDATE, DELETE։
Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 11 - MERGE հարցումներ
Միավորող հարցումները հատուկ հիբրիդ տեսակի հարցումներ են։ Չնայած SQL 2003-ում սահմանվել է այս հարցումների շարահյուսությունը, իրականում չկան տվյալների բազաներ, որոնք աջակցում են այդ շարահյուսությանը։ Այնուամենայնիվ, տվյալների բազաների մեծ մասը տրամադրում է այս ֆունկցիոնալության այլընտրանքային իրականացում՝ օգտագործելով յուրահատուկ շարահյուսություն։ Drupal-ում միավորող հարցման կոնստրուկտորը աբստրակցիա է իրականացնում այս գաղափարի շուրջ՝ կառուցելով այնպիսի օբյեկտ, որը հնարավոր կլինի կոմպիլացնել ըստ կոնկրետ բազայի առանձնահատկությունների։
Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 10 - Ջնջել հարցումները (DELETE)
Ջնջման հարցումները պետք է օգտագործեն հարցման կոնստրուկտոր։ Դրանք սկսվում են db_delete()
ֆունկցիայով՝
Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 9 - Թարմացման հարցումներ
Թարմացման հարցումները միշտ պետք է օգտագործեն հարցման կոնստրուկտոր։ Տարբեր տվյալների բազաներ ունեն հատուկ մշակման մեթոդներ LOB (Large OBject, օրինակ՝ TEXT MySQL-ում) և BLOB (Binary Large OBject) դաշտերի համար, ուստի աբստրակցիայի մակարդակ անհրաժեշտ է, որպեսզի յուրաքանչյուր տվյալների բազայի վարորդ կարողանա ապահովել համապատասխան ֆունկցիոնալություն։
Թարմացման հարցումները պետք է սկսվեն db_update()
ֆունկցիայից՝
Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 8 - Հարցումների ներմուծում (INSERT INTO)
Տեղադրման հարցումները միշտ պետք է իրականացվեն հարցումների կոնստրուկտորի միջոցով։ Որոշ տվյալների բազաներ պահանջում են հատուկ մշակման եղանակներ LOB (Large Object, օրինակ՝ MySQL-ում տեքստ) և BLOB (Binary Large Object) դաշտերի համար, այդ պատճառով անհրաժեշտ է աբստրակցիայի մակարդակ, որպեսզի յուրաքանչյուր տվյալների բազայի (ԴԲ) վարորդ կարողանա իրականացնել համապատասխան մշակման մեթոդները։
Տեղադրման հարցումը սկսվում է db_insert()
ֆունկցիայի օգտագործմամբ՝
Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 7 - Հարցման արդյունքների մշակում (fetch)
Ընտրության հարցումը միշտ վերադարձնում է հարցման մշակման արդյունքը՝ 0 կամ ավել գրառում։ Կան մի քանի եղանակներ արդյունքը մշակելու համար, որոնք կարող եք օգտագործել ըստ անհրաժեշտության։
Ամենահաճախ օգտագործվող մեթոդը foreach()
ցիկլն է՝ արդյունքների միջով անցնելու համար։
Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 6 - Հարցման արագ փոփոխություն (hook_query_alter)
Հարցման փոփոխում կատարման պահին
Դինամիկ ընտրության հարցումների կարևոր առանձնահատկությունն այն է, որ այլ մոդուլները կարող են փոփոխել հարցումները «թռիչքի վրա»։ Սա թույլ է տալիս այլ մոդուլներին ավելացնել իրենց հրահանգները հարցման մեջ՝ այդպիսով ազդելով դրա վարքագծի վրա կամ փոփոխություններ կիրառել կատարման պահին, օրինակ՝ սահմանել հասանելիության իրավունքներ նոդերի համար։ Կան հարցման փոփոխման երեք բաղադրիչ՝ tagging (պիտակավորում), meta data (մետա տվյալներ) և hook_query_alter()
։
Աշխատանք տվյալների բազայի հետ Drupal 7-ում - Դաս 5 - Ընդլայնիչներ
Ինչի՞ց սկսել:
Ընտրության հարցումները աջակցում են ընդլայնումներ (extenders)։ Ընդլայնումը հնարավորություն է տալիս ավելացնել ֆունկցիոնալություն ընտրության հարցմանը կատարողականության ընթացքում։ Այդ ֆունկցիոնալությունը կարող է լինել լրացուցիչ մեթոդ կամ վերամշակել գոյություն ունեցող մեթոդի վարքագիծը։
Drupal Theming Դաս 2 Մաս 2 Սլայդ շոու Theming (դիտում է սլայդ շոուն)
Այս ձեռնարկում ես ցույց կտամ, թե ինչպես ստեղծել սլայդշոու՝ օգտագործելով Views slideshow մոդուլը: Մենք կավելացնենք մի քանի սլայդներ և դրանք կդարձնենք դասավորությանը համապատասխան: