ماژول نویسی دروپال

توسعه ماژول برای دروپال

وجود تعداد بی شماری ماژول برای دروپال به این معنی نیست که همیشه برای هر ویژگی که مایل هستید به سایت دروپالی خود اضافه کنید، یک ماژول از قبل نوشته شده، وجود دارد. معمولا ترکیبی از ماژول های موجود لازم هستند تا ویژگی ها و نیازمندی های یک پروژه طراحی سایت را در دروپال پیاده کنید.

ولی حتی ترکیب دو یا چند ماژول دروپال نیز در پروژه هایی با مقیاس بزرگتر و یا تنوع بیشتر، پاسخگو نخواهد بود. بنابراین شما باید خود دست به کار شوید و ویژگی های مورد نیاز را به دروپال اضافه کنید. این یکی از هیجان انگیز ترین بخش های راه اندازی یک سایت با دروپال است.

راه استاندارد برای افزودن ویژگی های جدید و توسعه دروپال، ساخت ماژول جدید است. برای این کار شما باید با زبان برنامه نویسی PHP (و همین طور جاوا اسکریپت و jQuery) آشنایی کافی داشته باشید. ولی مهم تر از همه این است که باید مفاهیم توسعه ماژول در دروپال را یاد بگیرید و بدانید که چگونه از API دروپال برای افزودن ویژگی های که لازم دارید، بهره ببرید.

در این بخش، آموزش ها و تجاربی درباره ساخت ماژول دروپال و کار با API آن، برای سطح های مختلفی ارائه می شود. اما بیشتر این مطالب تجربه هایی هستند که به صورت واقعی در کار برای یک برنامه نویس دروپال اتفاق افتاده است.

نظرات

خیلی سایتتون مفیده ممنون

تو ایران به دروپال خیلی کم پرداخته شده که خیلی حیفه ممنون از شما

تصویر admin
متشکر از نظر دلگرم کننده شما.

با سلام. من تازه با دروپال آشنا شدم. در سایت رسمی دروپال نوشته دروپال می تونه یه فرم ورک برای وب اپلیکیشن باشه خواستم بدونم با این تعریف از دروپال میشه با دروپال سامانه ایی مثل سامانه انتخاب واحد دانشگاه یا سامانه های اداری رو پیاده سازی کرد؟؟
با تشکر

تصویر admin
بله خانم الناز. با دروپال هر چیزی امکان پذیر هست. اصولا این فریم‌ورک برای کارهای بزرگ طراحی شده است. ما با دروپال وب اپلیکیشین های مختلفی با سایز های متفاوتی درست کنیم و این سیستم با امکانات هسته، قابلیت توسعه و برنامه نویسی، ماژول های متعدد هر پروژه ای را راه می اندازد. البته این طور نیست که به سرعت آن را کاملا یاد بگیرید بلکه نیاز به صرف وقت و کسب تجربه دارد.

ممنون از راهنماییتون آقا وحید... میشه لطف کنید چندتا سایت رو به عنوان مثال اسم ببرید که خدماتی که ارایه میدن مثله سامانه انتخاب واحد باشه و با دروپال ساخته بشه؟
راستیتش من دانشجوی نرم افزارم و تویه درس نرم افزار 2 که خودتون بهتر میدونید از ما میخوان که سامانه اداری که تحلیل کردیمو پیاده سازی کنیم. حالا من می خوام روی وب و با دروپال این کار رو کنم...بنظرتون میشه؟ راهش چیه؟ چقد طول میکشه؟ چیکارا باید بکنم؟؟؟ من خیلی این روزا سرچ کردم ولی گیج گیج شدم...
مرسی از اینکه سوالا رو میخونید و به موقع جواب میدیدن....و تشکر به خاطر سایته خوبتون

تصویر admin
خانم الناز. دقیقا الان نمونه سایتی که کار مشابه شما انجام بدهد را نمی شناسم. ولی هر کاری را می توانید با این سیستم انجام بدهید. ولی یادگیری اولیه سیستم زمان بر است. اگر بتوانید ویدئو های Lynda برای آموزش Drupal Essential Training به دست بیاورید و مشاهده کنید، احتمالا چند قدم سریعتر خواهید برداشت.

سپاس از راهنمایی شما...

سلام
خیلی ممنون برای این سایت مفید
من که خیلی چیزا یاد گرفتم از این سایت
انسان بزرگی هستید که وقت میذارید و دانسته های خودتون رو در اختیار بقیه قرار میدید

یه سوال داشتم
من با استفاده از راهنمایی های همین بخش چندتا ماژول برای سایتم نوشتم، کلا سایت من از چندین فرم تشکیل شده، حالا میخوام فرمت فرم هام رو درست کنم، یعنی نیاز به کدهای html دارم، این کدها رو میشه درون ماژول ها استفاده کرد؟
بازم ممنون

تصویر admin
خانم بهناز ، از لطف شما نسبت به سایت سپاسگزارم. بهتر است بیان کنید که چه تغییری در فرمت نمایشی می خواهید اعمال کنید که بتوانم راه مناسب آن را به شما بگویم.

ممنون برای جواب
تغییرات cssی، چیزایی مثل راست چین کردن، یا قرار دادن فیلدهام درون لایه ها یا ستون های جدول برای مرتب چیدنشون، تغییر فونت و رنگ و ...
سرچ که کردم تگ هایی مثل Prefix و sufix رو پیدا کردم و ازشون استفاده کردم، اما نمیدونم این کار درسته یا نه!
درسته که کل تغییرات cssیم رو تو ماژول بیارم یا شیوه درست دیگه ای داره؟

ببخشید یه سوال دیگه هم داشتم
تو سایتم شاید تقریبا 10 تا فرم داشته باشم، درستش اینه که برای هر فرم یه ماژول بنویسم یا همه فرم ها رو تو یه ماژول قرار بدم؟

بازم ممنون، اجرتون با خدا :)

تصویر admin
خب با توجه به اینکه تغییرات نمایشی است، بهتر است این کار در CSS انجام بشود. اگر بتوانید کار css مورد نظر را در تم سایت انجام دهید که بهتر است. ولی ا گر فکر می کنید که بهتر است کد css با ماژول همراه باشد. می توانید به ماژول خود یک فایل css اضافه کنید و با استفاده از امکان ضمیمه کردن فایل css به فرم دروپال آن را در صفحه لود کنید. برای ضمیمه کردن فایل css به فرم دروپال از نمونه کد زیر می توانید استفاده کنید:
$form['#attached']['css'] = array(
  drupal_get_path('module', 'drupalika_module') . '/drupalika_module.css',
);

خیلی خیلی ممنون

شرمنده، میشه سوال دومم رو هم جواب بدید؟
بازم ممنون

تصویر admin
خب، اینکه همه فرم ها در یک ماژول باشد یا چند ماژول بستگی به طراحی و استراتژی سایت شما دارد. می توانید در یک ماژول چند فرم داشته باشید. یعنی این مسئله ای نیست. اگر فرم های شما مرتبط با یکدیگر هستند و با یکدیگر معنی می دهند می توانید آنها را در یک ماژول قرار بدهید. همین طور می توانید به قابلیت استفاده مجدد از ماژول های خود فکر کنید. مثلا یک ماژول که درست طراحی و پیاده سازی شده می تواند در پروژه های دیگر مورد استفاده قرار بگیرد. همین طور به این موضوع توجه داشته باشید که ماژول شما هدف مشخصی را دنبال کند و کارهای مشخص و محدودی را انجام بدهد.

با تشکر و خسته نباشيد واقعا سايت خيلي خوب و مفيدي داريد موفق و پيروز باشيد

سلام از زحماتتون متشکرم
من در بخش ماژول نویسی موضوع مورد نظرم رو پیدا نکردم
من می خواستم در مورد استفاده از JQuery و JavaScript در محتوای بلاکی (دلخواه)که توسط یک ماژول دلخواه ساخته شده اطلاعاتی کسب کنم اگه راهنمایی کنین ممنون میشم یا به عبارت دیگه میخواستم بدونم چطوری از یک فایل JS دلخواه در محتویات بلاکم استفاده کنم؟

ارسال نظر