Skip to Content

Revision of شرح لمصطلحات دروبال from Tue, 07/02/2006 - 1:55am

The revisions let you track differences between multiple versions of a post.

Alaa's picture

مصطلحات و مفاهيم أساسية عن دروبال

دروبال نظام حر و مفتوح المصدر لادارة المحتوى و النشر على الوب، دروبال نظام طيع جدا يمكن استخدامه لبناء أي نوع من صفحات الوب و يسهل الاضافة الي امكانياته و تطويره و يتميز خصوصا في بناء صفحات مجتمعات الوب.

تكمن المرونة العالية في نظام دروبال في أنه مبني على بعض الأفكار المجردة البسيطة، عملية بناء و اعداد موقع بدروبال تتركز في تجميع و تربيط تلك الأفكار و الأدوات. يتبنى مطوروا دروبال مبدأ أن تكون واجهة المستخدم (بالأخص مدير الموقع) طبقة رقيقة شفافة لا تحجب تفاصيل البناء الداخلي للبرنامج و من هنا يأتي شعار دروبال "سباكة لمجتمعات الوب"، اذن دورك كمدير للموقع كدور سباك يركب مواسير و حنفيات و في النهاية يرص بلاط ليبسط واجهة البرنامج.

هذه الوثيقة محاولة لشرح المواسير (عفوا المصطلحات و المفاهيم) المستخدمة في دروبال، يمكنك استخدام دروبال بدون أن تتحول الى سباك، هذه الوثيقة بالأساس لمن يرغب في التعمق في النظام.

سأحاول ترتيب المصطلحات بدرجة الأهمية.

node

العقدة هي وحدة المحتوى في دروبال، أي صفحة لها عنوان (url) يقوم أحد مستخدمي النظام باضافتها عبارة عن node، اذن أغلب المحتوى في دروبال سيكون في صورة عقد، العقد أنواع (node types)، مثل خبر، تدوينة، صورة، صفحة كتاب، فعالية، تقرير عن فيلم، سجلات عقار، الخ، و اضافة العقد (المحتوى) يكون عن طريق create content و فيها ستجد قائمة بأنواع العقد المتاحة لك.

كل نوع له استمارة كتابة/تحرير مختلفة فمثلا استمارة الفعاليات بها خانة لتحديد ميعادي بدء و انتهاء الفعالية، و استمارة الصور بها خانة لتحميل ملف الصورة.

أضافة أنواع جديدة من المحتوى يكون عن طريق اضافة وحدات برمجية اضافية (اذن المبرمج هو المسئول عن تصميم أنواع جديدة من العقد). تتيح وحدة flexinode الاضافية امكانية تصميم أنواع جديدة من العقد عن طريق تصميم استمارات اضافة و تحرير المحتوى و بدون الحاجة لتعلم البرمجة.

block

البلوكات هي وحدات محتوى صغيرة لا عنوان لها (ليست صفحات) و لكن يمكن رصها في مناطق مختلفة (في الغالب على شريط جانبي على يمين أو شمال المحتوى الرئيسي) بحيث تظهر على أكثر من صفحة (في الغالب تظهر في كل صفحات الموقع).

أمثلة:

  • بلوك دخول المستخدم
  • بلوك قائمة أحدث التعليقات
  • بلوك بعدد الزوار الحاليين
  • بلوك قائمة التصفح
  • الخ

غالبا ما يتم تخليق البلوكات تلقائيا من قبل دروبال، و تتيح بعد الوحدات البرمجية الاضافية بلوكات جديدة، لكن يمكن لمدير الموقع اضافة بلوكات بشكل مشابه لعملية اضافة العقد عن طريق administer->blocks->add block(مفيدة مثلا لوضع زراير و بانر أو لصق أكواد javascript للربط بين الموقع و مواقع خدمية مثل del.icio.us مثلا).

يختار مدير الموقع البلوكات التي يرغب في اظهارها و يحدد مواضعها عن طريق administer->block كما يمكن تحديد ظهور البلوك على صفحات معينة أو لمجموعة محدودة من المستخدمين مثلا.

module

وحدات برمجية، هي مجموعة ملفات برمجية تضيف مزايا أو تعدل من سلوك نظام دروبال، الحقيقة أن لب نظام دروبال بدون أي وحدات لا معنى له بالمرة، فحتى مفهوم node معرف في وحدة برمجية. يمكن لأي مبرمج php أن يوسع من امكانيات دروبال بكتابة وحدات توفي احتياجاته، كتابة وحدة لدروبال عموما أسهل من كتابة برنامج مستقل من الصفر.

قائمة الوحدات الأساسية و وظيفتها قائمة ببعض الوحدات الاضافية الدارجة

menu

القائمة عبارة عن شجرة من الروابط ينشئها مدير الموقع عن طريق administer->menus، رغم أن نظام دروبال و وحداته البرمجية مسئول عن تخليق قائمة التصفح الرئيسية (navigation menu) يمكن لمدير الموقع تحرير و تعديل روابط القائمة.

ينشئ دروبال بلوك لكل قائمة بحيث تتحكم في اظهار القائمة من admin->blocks

theme

التيمات عبارة عن مجموعة من الملفات تحدد شكل و تصميم للصفحة، يمكنك اختيار أحد التيمات من administer->theme، كما يمكن تنزيل تيمات اضافية من صفحة دروبال.

عمل تصميم جديد لموقعك المعتمد على دروبال يعني عمل تيمة جديدة، غالبا عن طريق تعديل تيمة موجودة مسبقا. تحتاج لمعرفة بأساسيات html و css لتعديل أو عمل تيمات جديدة.

بعكس الأنظمة الأبسط مثل blogger التيمة في دروبال مكونة من أكثر من ملف و يحدد ملف style.css أغلب تفاصيل التصميم من ألوان و أبناط و مسافات و خلفيات، الخ.

theme engine

محرك التيمات عبارة عن وحدة برمجية خاصة تضيف وسيلة جديدة لعمل التيمات في دروبال.

عموما التيمات تعتمد على ملفات html بحيث يحل محل المحتوى رموز خاصة تشير الى بيانات يقوم نظام دروبال بتوفيرها، و كل محرك يتيح أسلوب/لغة قولبة (templating) مختلفة يمكن استخدامها في التصميم.

المحرك الأكثر شعبية في دروبال هو phptemplate، و هو المحرك الأساسي ابتداء من الاصدار 4.7، الفكرة الأساسية في phptemplate هي استخدام لغة البرمجة php نفسها بدلا من اختراع لغة جديدة محدودة الامكانيات. بحيث يمكن للمبرمج امكانية تلقيم كود php في أي مكان في التيمة مما يتيح له امكانيات غير محدودة، في نفس الوقت تعلم البرمجة بphp ليس ضروري لعمل تيمات phptemplate.

مقدمة في تيمات phptemplate

input format

نمط الادخال.

عند اضافة محتوى الي دروبال يمكنك الاختيار ما بين انماط مختلفة في ادخال المحتوى، يقوم دروبال بتحوير المحتوى وفقا لقواعد خاصة بكل نمط ادخال حتى يحصل على كود html يمكن اظهاره على الوب، أنماط الادخال اذن عبارة عن لغات مختلفة لتوصيف البيانات و الهدف النهائي هو الوصول لكود htm، تستخدم أنماط الادخال في تبسيط عملية كتابة المحتوى، فمثلا يمكن استخدام نمط ادخال مشابه لويكي بدلا من html، كما تتيح أنماط الأدخال امكانية التحكم في و فلترة ما يكتب في التعليقات أو في مساهمات الأعضاء (في حالة انعدام الثقة في نوايا أو قدرات المساهمين) بحيث تضمن عدم نشر محتوى مؤذي (كلمات ممنوعة، سكريبتات ضارة لاختراق أجهزة القراء، كود html سيئ تم قصه من أحد برامج مايكروسوفت المتخلفة).

يأتي دروبال بثلاثة أنماط ادخال افتراضية:

filtered html
يسمح فقط بمجموعة محدودة من وسوم html (يحددها مدير الموقع) و يحذف أي خصائص تتحكم بالشكل، مما يتيح لمدير الموقع ضمان أن يتبع كل المحتوى تصميم موحد، اضافة الى ذلك يحول هذا النمط نهايات الأسطر الى وسوم br مما يسهل يتيح كتابة نص مسترسل بشكل طبيعي و بدون اضافة كود html الا عند الضرورة
full html
نمط ادخال لا يتدخل في ما يكتبه المستخدم عدا تحويل نهايات الأسطر الي وسوم br، أي يسمح بأي كود html و باضافة خصائص css. و يفضل ألا يسمح الا لمن تثق بهم أن يستخدموا هذا النمط
PHP code
نمط ادخال خاص جدا يسمح بكتابة كود php داخل الصفحة مباشرة، يتم تنفيذ هذا البرنامج الصغير في سياق دروبال بحيث يتاح للبرنامج كافة متغيرات دروبال بما المتاحة للوحدات البرمجية بما فيها معلومات عن المستخدم الحالي (أي من يتصفح العقدة التي تحتوي على الكود) و تظهر نتائج تشغيل البرنامج في المكان الذي يحتوي غالبا على المحتوى

filter

الفلاتر

taxonomy

vocabulary

taxonomy term

path alias

user

profile

user roles

book

outline

revisions


image gallery


flexinode templates wiki syntax rich text editor


I suppose each of these should go on a seperate book page that falls under the same heirarchy, and any new arabic pages on drupal should fall under that heirarchy this way we might one day (as in the next decade) have a decent drupal booklet in arabic.

Comments

Plazma kiralama

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.


Dr. Radut | book