السلام عليكم
اليوم بإذن الله سيكون درسنا حول إنشاء مكونات [Components] مجلة جملة ،
سنبدأ اليوم بمكون بسيط جدا و دون قاعدة بيانات حتى ، لكن تأكدوا بإذن الله سنصل معا إلى برمجة مكون إحترافي و بمقاييس الكود البرمجي للمجلة ،
علما إنه دون إحترام هذه المقاييس يمكن لأي مبرمج متوسط دمج أي سكريبت مع المجلة ، كما في حال phpnuke مثلا ، لكن مجلة جملة تعمل تحت مقاييس صارمة ،
و حتى تكون الإضافات التي نبرمجها الآن رسمية في المستقبل ، الأفضل لنا إتباع هذه المقاييس و المعايير ...
بإسم الله نبدأ
سنحاول برمجة مكون بإسم
أي مكون يتكون بالضرورة من ثلاث ملفات أو أكثر
سنقتصر على الأبسط و هو 3 ملفات
بما أن المكون الذي سنحاول برمجته يسمى com_example يجب أن تكون ملفاته بنفس الإسم [مع حذف العبارة com_ خلاف الموديلات]و بهذه الوتيرة
هو الملف الرئيسي الذي يظهر في واجهة الموقع
هو الملف المسؤول عن نقل الملفات إلى مجلة المكونات في موقعك
(له خصائص كثيرة سنشرحها في دروس قادمة)
كود PHP:
admin.example.php
هو الملف الذي يُظهر إعدادات المكون في لوحة التحكم
الآن نبدأ مع ملف XML المسؤول عن النقل
ننشئ الملف
نضع فيه التالي
كود PHP:
<?xml version="1.0" encoding="utf-8"?>
كالعادة نضع الإصدار و الترميز
كود PHP:
<install version="1.5" type="component">
نبدأ بإخبار المجلة أننا نريد تثبيت إضافة و ذلك بـفتح
ثم إصدار جملة و هو مهم جدا ، بالإضافة إلى نوع الإضافة و هو في حالتنا [component]
كود PHP:
<name>Example</name>
إسم الإضافة
كود PHP:
<version>1.0</version>
إصدار الإضافة
كود PHP:
<creationDate>08.04.2009</creationDate>
تاريخ الإصدار
كود PHP:
<author>Rifizm - JoomlaUT</author>
معلومات المبرمج
كود PHP:
<authorEmail>rifizm@joomlaut.org</authorEmail>
البريد الإلكتروني للمبرمج
كود PHP:
<authorUrl>http://www.joomlaut.org</authorUrl>
رابط موقع المبرمج
كود PHP:
<copyright>JoomlaUT 2009</copyright>
حقوق النشر
كود PHP:
<license>GNU General Public License</license>
الترخيص
كود PHP:
<description>Example Component By JoomlaUT</description>
وصف الإضافة
الآن نبدأ مع وظيفة ملف الـ xml الحقيقية [في حالتنا هذه] و التي هي النقل .
نعرف المجلة عن نوع العملية
نضع الملف الرئيسي للإضافة
كود PHP:
<filename component="example">example.php</filename>
كما قلنا في درسنا السابق فيمكننا إضافة ملفات أخرى في حال كانت الإضافة تتكون من عدة ملفات .
نغلق التعريف
الآن نفتح تعريفا من نوع مختلف لم نتطرق إليه في الدرس الماضي و هو نقل الملفات إلى مجلد المدير
كود PHP:
administrator/components/com_example
و ذلك بفتح التعريف :
كود PHP:
<administration>
ثم نكتب إسم المكون الذي سيظهر في القائمة العلوية من لوحة التحكم في : التطبيقات
كود PHP:
<menu>Example</menu>
و يكون بين
و
ثم نكمل التعريف بالملفات التي سيتم نقلها لمجلد المكونات في الـ administrator
نفتح تعريف نقل الملفات
كود PHP:
<filename>admin.example.php</filename>
الملف المراد نقله
نغلق تعريف نقل الملفات
كما في السابق
ثم نغلق تعريف نقل الملفات لمجلد الإدارة
كود PHP:
</administration>
ثم نغلق ملف الـ xml
و يكون الناتج كالتالي :
كود PHP:
<?xml version="1.0" encoding="utf-8"?>
<install version="1.5" type="component">
<name>Example</name>
<version>1.0</version>
<creationDate>08.04.2009</creationDate>
<author>Rifizm - JoomlaUT</author>
<authorEmail>rifizm@joomlaut.org</authorEmail>
<authorUrl>http://www.joomlaut.org</authorUrl>
<copyright>JoomlaUT 2009</copyright>
<license>GNU General Public License</license>
<description>Example Component By JoomlaUT</description>
<files>
<filename component="example">example.php</filename>
</files>
<administration>
<menu>example</menu>
<files>
<filename>admin.example.php</filename>
</files>
</administration>
<params />
</install>
الآن أمامنا ملفان و هما :
و
كود PHP:
admin.example.php
ننشي الملف
نفتح الملف بـ
ليعرف المتصفح أن الملف مكتوب بلغة الـ PHP
ثم نكتب العبارة التالية و هي لمنع الولوج المباشر و أيضا لإعلان الإنتماء إلى المجلة ، و به يتقاسم مع المجلة الهيدر و الفوتر و القالب ...
كود PHP:
defined( '_VALID_MOS' ) or die( 'الوصول المباشر غير مسموح.' );
الآن نطبع كلمة ما و لتكن
كود PHP:
echo "مرحبا بكم في عالم جملة";
نحفظ الملف
و لسنا مظطرين لإغلاق الملف بـ
و يكون الناتج
كود PHP:
<?php
defined( '_VALID_MOS' ) or die( 'الوصول المباشر غير مسموح.' );
echo "مرحبا بكم في عالم جملة";
الآن نكتب ملف الإدارة و الذي -في حالتنا- لا يحتوي أي إعدادات تحكم
لكن إذا تركناه فارغا فلن يرى لنا من لوحة التحكم
ننشئ الملف
كود PHP:
admin.example.php
و نكتب فيه التالي
كود PHP:
<?php
echo"لا توجد لوحة تحكم لهذا التطبيق";
?>
دون عبارات تعريفية كما في الملف السابق مثل
كود PHP:
defined( '_VALID_MOS' )
الآن نضغط الملفات الثلاثة بالـ ZIP أو غيره إذا كان سيرفرك يستطيع فك الضغط عنه
و نثبت الإضافة من لوحة تحكم جملة
* الموضوع الأصلي
* لا زلنا بحاجة لأعضاء جدد بالفريق [مبرمجين و غير مبرمجين]
* الموضوع مفتوح المصدر
* المكون بالمرفقات
هذا و الله المعين
أخوكم