[كليجا] كيف تصنع اضافه/ هاك لكليجا , موضوع خاص بالمطورين !
مرسل: 26 مارس 2009, 18:47
اهلاً ..
هذا موضوع قديم، تم تغيير نظام الاضافات في كليجا بشكل كامل تماماً
في كليجا هناك نظام اضافات مستقل , يستطيع معه المستخدم من اضافة الاضافات وتعطيلها بظغطه زر !
الموضوع ممتع ايضا للمطورين والمستخدمين معاً ..
- فكيف انا "كمطور" استطيع ان أنشأ اضافتي الخاصه بكليجا ؟
الاضافه هي تغيير كود برمجي او اضافه كود على الكود الاصلي .. والاضافات التقليديه هي البحث و الاضافة والاستبدال .
اما النظام الحالي بكليجا فيعتمد على "الخطاطيف" او مايسمى بال hooks
كل مكان مهم تم وضع خطّاف باسم معين
واذا اردت استخدامه تقوم فقط باخذ الاسم ووضعه في ملف الاضافه ال xml
- هلا اوضحت لنا خطوه بخطوه ؟
كل اضافه او اغلب الاضافات لها ملف xml , هذا الملف يحوي بيانات الاضافه والاكواد البرمجيه .
حمل الاضافه الخاصه بالاخ صالح المطرفي لنشرح عليها ..
فمكونات ملف الاضافه هي
info هي معلومات الاضافه وتكون كالتالي :
اسم الاضافه plugin_name , و اصدارها plugin_version , ووصف الاضافه plugin_description , و كاتب الاضافه plugin_author
اما install فهو الكود المراد تنفيذه عند تثبيت الاضافه , وتستطيع وضع هنا استعلامات وامور اخرى كحذف الكاش وخلافه ..
اما uninstall فهذا الكود الذي يتم تنفيذه عند حذف الاضافه , وتستطيع وضع حذف الاستعلامات و حذف التغييرات على القوالب !
اما templates فهو الجزء الخاص بالتعديلات الخاصه بالقوالب
من هنا نستطيع اضافه قالب او تعديل القوالب ايضاً ..
عند تعديل قالب , اي قالب , نقوم بوضع احداث التعديل داخل وسم edit داخل وسم templates
في المثال السابق قمنا بتعديل قالب admin_configs
بالبحث عن <!-- admin configs tr extra -->
واضافه الكود المراد اضافته بعدها
هناك احداث للتعديل
مثلا بالكود السابق اضفنا الكود بعدها عن طريق add_after
واستطيع استخدام ايضا
add_after_same_line : للاضافه بعده في نفس السطر
add_before : للاضافه قبل
add_before_same_line : للاضافه قبل في نفس السطر
replace_with : استبدال بـ
يمكن اضافه اكثر من تعديل داخل وسم edit بنفس الشكل السابق ..
اما لو اردت اضافه قالب فاستخدم وسم new داخل وسم templates
في الكود السابق اضفنا القالب new_template مع الكود
code of template في داخله
وتستطيع اضافه اكثر من قالب بنفس الوقت داخل وسم new
اما hooks وهو الاهم , هو الاكواد البرمجيه التي انفذها عند كل مكان اريده
فمثلا افتح ملف index.php
ستجد اكواد الخطاطيف فعدة امكنه
في هذا المكان مثلا اريد ان انفذ كود , فأقوم باخذ اسم الخطّاف
واضعه داخل وسم hook في وسم hooks
لو كان لديك اي ملف خارجي , تقوم بوضعه مع ملف الاضافه في مجلد root مثلا وتظغطه وترسله لنا
هذه نبذه بسيطه فقط للتوضيح للمطورين .. تستطيع نقلها لاي مكان او منتدى تريده !
بالتوفيق ..
هذا موضوع قديم، تم تغيير نظام الاضافات في كليجا بشكل كامل تماماً
في كليجا هناك نظام اضافات مستقل , يستطيع معه المستخدم من اضافة الاضافات وتعطيلها بظغطه زر !
الموضوع ممتع ايضا للمطورين والمستخدمين معاً ..
- فكيف انا "كمطور" استطيع ان أنشأ اضافتي الخاصه بكليجا ؟
الاضافه هي تغيير كود برمجي او اضافه كود على الكود الاصلي .. والاضافات التقليديه هي البحث و الاضافة والاستبدال .
اما النظام الحالي بكليجا فيعتمد على "الخطاطيف" او مايسمى بال hooks
كل مكان مهم تم وضع خطّاف باسم معين
واذا اردت استخدامه تقوم فقط باخذ الاسم ووضعه في ملف الاضافه ال xml
- هلا اوضحت لنا خطوه بخطوه ؟
كل اضافه او اغلب الاضافات لها ملف xml , هذا الملف يحوي بيانات الاضافه والاكواد البرمجيه .
حمل الاضافه الخاصه بالاخ صالح المطرفي لنشرح عليها ..
فمكونات ملف الاضافه هي
info هي معلومات الاضافه وتكون كالتالي :
كود: تحديد الكل
<info>
<plugin_name>limit_size_download</plugin_name>
<plugin_version>1.0</plugin_version>
<plugin_description>جعل سرعة التحميل محددة مثل بعض مواقع التحميل على سبيل المثال رابيد شير.....</plugin_description>
<plugin_author>http://www.saleh.cc</plugin_author>
</info>
اما install فهو الكود المراد تنفيذه عند تثبيت الاضافه , وتستطيع وضع هنا استعلامات وامور اخرى كحذف الكاش وخلافه ..
اما uninstall فهذا الكود الذي يتم تنفيذه عند حذف الاضافه , وتستطيع وضع حذف الاستعلامات و حذف التغييرات على القوالب !
اما templates فهو الجزء الخاص بالتعديلات الخاصه بالقوالب
من هنا نستطيع اضافه قالب او تعديل القوالب ايضاً ..
عند تعديل قالب , اي قالب , نقوم بوضع احداث التعديل داخل وسم edit داخل وسم templates
كود: تحديد الكل
<edit>
<template name="admin_configs">
<find><![CDATA[<!-- admin configs tr extra -->]]></find>
<action type="add_after">
<![CDATA[
<!-- limit_size_download b -->
.......
<!-- limit_size_download e -->]]>
</action>
</template>
</edit>
بالبحث عن <!-- admin configs tr extra -->
واضافه الكود المراد اضافته بعدها
هناك احداث للتعديل
مثلا بالكود السابق اضفنا الكود بعدها عن طريق add_after
واستطيع استخدام ايضا
add_after_same_line : للاضافه بعده في نفس السطر
add_before : للاضافه قبل
add_before_same_line : للاضافه قبل في نفس السطر
replace_with : استبدال بـ
يمكن اضافه اكثر من تعديل داخل وسم edit بنفس الشكل السابق ..
اما لو اردت اضافه قالب فاستخدم وسم new داخل وسم templates
كود: تحديد الكل
<new>
<template name="new_template"><![CDATA[
code of template
]]></template>
</new>
code of template في داخله
وتستطيع اضافه اكثر من قالب بنفس الوقت داخل وسم new
اما hooks وهو الاهم , هو الاكواد البرمجيه التي انفذها عند كل مكان اريده
فمثلا افتح ملف index.php
ستجد اكواد الخطاطيف فعدة امكنه
في هذا المكان مثلا اريد ان انفذ كود , فأقوم باخذ اسم الخطّاف
واضعه داخل وسم hook في وسم hooks
كود: تحديد الكل
<hook name="begin_index_page"><![CDATA[echo 'hello world';]]></hook>
هذه نبذه بسيطه فقط للتوضيح للمطورين .. تستطيع نقلها لاي مكان او منتدى تريده !
بالتوفيق ..