همانطور که در مقدمه ذکر شد، ما در این مثال لیستی از پیوندها به گره هایی که هفته پیش ساخته شده اند را میسازیم. این بخش از خودآموز به نحوه ایجاد شاخه و فایل ماژول اختصاص دارد.
نام ماژول
اولین قدم از ساخت ماژول انتخاب یک نام کوتاه برای آن میباشد. این نام کوتاه در همه فایلها و توابع ماژول استفاده میشود. پس باید فقط با حروم کوچک آغاز شود و طبق قوانین دروپال باید فق شامل حروف کوچک و زیرخط باشد. در این مثال، نام "onthisdate" انتخاب شده است.
نکته مهم: اینکه نام کوتاه برای نام فایلهای ماژول و پیشوند توابع ماژول استفاده میشوند فقط یک قانون نیست؛ وقتی شما یک هوک پیاده سازی میکنید دروپال فقط هوک هایی که با نامشان با پیشوند نام ماژول آغاز شده است را تشخیص میدهد.
همچنین این نکته مهم است که نام ماژول شما با نام هیچ کدام از قالبها (themes) یی که در سایت استفاده میکنید نباید یکسان باشد.
ساخت فولدر و فایل ماژول
تا اینجا مشخص شد که نام ماژول ما "onthisdate" میباشد. ساخت ماژول را با ایجاد شاخه "sites/all/modules/onthisdate" در مسیر نصب دروپال آغاز میکنیم.
شما ابتدا بایست شاخه "sites/all/modules" را ایجاد کنید. سپس یک فایل PHP ایجاد کنید و آن را "onthisdate.module" نام گذاری کنید و در شاخه "sites/all/modules/onthisdate" قرار دهید. در دروپال 6 مسیر "sites/all/modules"، مسیریت که ماژول های غیر هسته در آن قرار میگیرند (مثل مسیر "sites/all/themes" برای قالب های غیر هسته). اصولا همه فایلهای اختصاصی یک سایت در شاخ "sites" قرار میگیرند و این روش به شما امکان میدهد که به سادگی هسته دروپال را بدون از دست دادن تغییرات دلخواهتان روی ماژولها و قالبها، آپدیت کنید. همچنین اگر شما یک دروپال چند سایته (multisite) ایجاد کرده اید و میخاهید برخی از مازول ها فقط برای یکی از سایتهای خاص به کار رود، میتوانید آن ماژول را در شاخه "sites/your-site-folder/modules" قرار دهید؛ که "your-site-folder" نام همان سایت خاص از دروپال چند سایته است.
کدنویسی استاندارد
همانطور که در «کدنویسی استاندارد» گفته شده؛ تگ بستن کد "?>" را حذف کنید. استفاده از تگ بستن کد مسائل و مشکلات عجیب زمان اجراء را در برخی نصبهای خاص سرور ایجاد میکند.
(نکته اینکه در مثالهای راهنمای دروپال، تگ بستن فقط به دلایل نمایشی استفاده میشود و شما نباید در کدنویسی واقعی از آن استفاده کنید.)
همه توابع در ماژول شمال که توسط دروپال استفاده خواهند شد باید به صورت {modulename}_{hook} نامگذاری شوند، که در آن hook پسوند از پیش تعریف شده تابع مباشد.
نظرات