+ الرد على الموضوع
صفحة 1 من 3 1 2 3 الأخيرةالأخيرة
النتائج 1 إلى 5 من 11
  1. #1
    المودة has a reputation beyond repute المودة has a reputation beyond repute المودة has a reputation beyond repute المودة has a reputation beyond repute المودة has a reputation beyond repute المودة has a reputation beyond repute المودة has a reputation beyond repute المودة has a reputation beyond repute المودة has a reputation beyond repute المودة has a reputation beyond repute المودة has a reputation beyond repute الصورة الرمزية المودة
    تاريخ التسجيل
    17 / 08 / 2004
    العمر
    32
    المشاركات
    20,806
    معدل تقييم المستوى
    26158

    افتراضي تعلم كتابة الـ Plugin في الـ vBulletin

    السلام عليكم ورحمة الله وبركاته ...

    قبل ان ابداء معكم هنالك أشياء اساسية يجب ان تكن ملم بهاء جميع الهاكات او الـplugins يتم تخزينها في قاعدة بيانات المنتدى(في جدول يسمى plugins) ويتم إستدعاءها من قاعدة البيانات الى الصفحات عن طريق تقنية الـhook لكي يتم تنفيذ الاكواد في الاماكن التي اخترتها انت ، وتم تقسيم أي ملف من ملفات الـvBulletin الى عدة أماكن والتقسيم هذا ما يعرف بالـHook .
    هنالك نقطة يجب ان تنتبه إليها هنالك أماكن كثيرة في ملفات الـvBulletin (لم يتم وضع Hooks لها وفي هذه الحالة يمكنك كتابة الكود الخاص بك يدويا في الملف المعني اذا الضرورة اقتضت ذلك ) ، حتى الان توجد حوالي اكثر من 500 hooks موزعه في الملفات ، هنالك شي آخر يجب ان تاخذه بعين الإعتبار لايمكنك تحديث اي استعلام او كود موجود مسبقا بالملف، بصورة اخرى اذا كان لديك هاك وتريد جلب نتائج أكثر عن طريق إستعلام قاعدة البيانات الموجود أصلا بالملف فلا يمكنك فعل ذلك إلا باضافة استعلام جديد خاص بك أي لايمكنك تحديث اي كود عن طريق الـHooks فقط يمكنك الاضافة، كفانا ثرثرة ولنبداء :)

    أولاً:
    تاكد بان نظام الـPlugins مفعل ، ويمكنكـ تفعيله من لوحة التحكم الخاصة بالمشرف العام وأسفل خيارات المنتدى.

    قم بإضافة plugin جديد
    http://www.yoursite.com/vb/admincp/plugin.php?do=add
    سنقم بتعريف الحقول الاساسية :-

    اسم المنتج او Product Name :
    اسم المنتج الافتراضي سوف يكن تابع للـvBulletin ويمكنكـ إضافة Plugin يتبع لمنتج آخر اة هاكـ آخر ،

    Hook Location:
    كما قلت في الاعلى هناء مكان تنفيذ الكود الخاص بك ،
    لتحديد الكود قم بالاتي :
    أفتح ملف الـvBulletin الذي تود تنفيذ الكود الخاص بكـ فيه وقم بتحديد المكان المناسب له بعد ذلك قم بالبحث عن أقرب $hook وعادةً يكن شكله كالتالي :
    كود PHP:
    ($hook vBulletinHook::fetch_hook('showthread_start')) ? eval($hook) : false
    بعد الحصول على الهوك الاقرب يمكنك معرفة اسمه بالنظر الى المتغير الذي يتم تمريره في دالة عرض الهوك ، وفي المثال أعلاه اسم الهةك هو : 'showthread_start' ، هذا هو المكان الذي سوف يتم تنفيذ كود الـPHP الخاص بك ، لكي تضح لك الصورة بشكل أكبر قم بفتح ملف showthread وتقريبا في السطر رقم 88 سوف تجد الهوك ،
    وهنالك سوف يتم التنفيذ، ومن القائمة المنسدلة قم بإختياره .

    عنوان الهوكـ أو الـTitle :
    قم باختيار اسم مناسب للـPlugin الخاص بك وراعي ان يكن الاسم بحروف انكليزية وسوف يتم تعريف هذا الاسم في ادارة البلوغنز.

    كود الـPHP أو Plugin PHP Code:
    ومن هنا تبداء المعاركـ :)
    هنا صع الكةد الخاص بكـ ، والذي تود تنفيذه ،
    إنتبه : لا ضرورة لكي تضع اوسمة البداية
    كود PHP:
    <?php ?>
    قم بوضع الكود كما هو بصورة مباشرة . وهذه النقطة مهمة جداً.


    تنشيط الـPlugin او Plugin is Active:
    هذا الخيار يسمح لك بتشغيل / إيقاف البلوغنز الخاص بكـ
    اذا اخترت نعم سوف يتم تنفيذ الكود ،
    هذه ابسط صورة لكتابة الـPlugins ، وبكل تاكيد هنالك سوف اضع لكم الطريقه الثانية وهي الأكثر اعترافيه لكتابة الPlugins لانها تشمل كل شي تريدهـ .
    وهي لا تختلف كثيرا عن الطريقه التي ذكرتها ،


    كتابة الـPlugins كملف XML
    لكي يسهل استيراده وتصديره لاصدقائكـ
    الصورة النموزجيه للـPlugin :


    كود PHP:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <plugins>
    <plugin active="1">
    <title>My First Hack</title>
    <hookname>showthread_start</hookname>
    <phpcode><![CDATA[
    // هنا ضع الكود الخاص بك
     
    ]]></phpcode>
    </plugin>
    </plugins>
    أحفظ الملف بامتداد XML ،


    شرح للكود :

    السطر
    كود PHP:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    تعريف عام للغة وترميز اللغة ، ولست بحاجة الى تغيره ، فقط يمكنك تغير الترميز اما البقة اتركها كما هي .
    الوسم <plugin active="1"> يعني ان الـplugin نشط ومفعل.
    الوسم <title>My First Hack</title>عنوان الـplugin .
    الوسم <hookname>showthread_star t</hookname> هو اسم الـHook او مكان تنفيذ الكود.
    الوسم <phpcode><![CDATA[ ]]></phpcode> هو مكان الكود الخاص بكـ

    الان تعلمت كيف تكتب Plugin خاص بك بطريقتين اختار اي واحده منهما واحبذ الطريقه الثانيه.


    * هنالك شي مفيد للمطورين ومبرمجي الهاكات وانصحكـ به لكي تعرف الهوكس Hooks التي تم استدعائها ،
    طبعا قبل ذلك قم بتفعيل وضع المعالجة او debug
    يمكنكـ تفعيله بإضافة السطر التالي :
    كود PHP:
    $config['Misc']['debug'] = true
    في آخر سطر لملف الـconfig.php الخاص بمنتداكـ (تفعيله يتسبب بضغط زايد للسيرفر ولا انصحك بالتفعيل في المنتديات الكبيرة فقط في منتدى الاختبار الخاص بك أو في المنتدى المنتدى الموجود بجهازكـ) ،،،
    بعد التفعيل سوف تلاحظ قائمة اسفل المنتدى توضح لك عدد الاستعلامات التي تم تنفيذها في قاعدة البيانات وتقم ايضا بجلب اسماء القوالب TEMPLATES التي تم إستدعائها في اي صفحة في المنتدى ، وفي لوحة التحكم ماخفي كان أعظم :) ،
    قم بهذه الخطوات لكي يتم جلب اسماء الـHook التي تم إستدعائها واستخدامها في تلك الصفحة.
    قم بفتح ملف class_hook.php الموجود داخل مجلد includes وابحث عن :
    كود PHP:
    function &fetch_hook($hookname)

    وسوف تجدها تقريبا في السطر رقم 83
    وأضف أسفلها مباشرة أضف:
    كود PHP:
    devdebug("تمت مناداة الهوكـ : $hookname"); 
    بعد هذا الموضوع يمكنكـ الإنطلاق في كتابة أول الـPlugin الخاص بكـ ، أتمنى ان تكونو قد إستمتعم في هذا الموضوع وقد أوصلت لكم الفكرة الأساسية لبرمجة الـPlugin وقريبا سوف اكتب لكم موضوع مختصر لطريقة برمجة الـProduct ككل.وسوف يكن هنالك شرح عملي لبرمجه هاكـ متكامل إن شاء الله
    تحياتي لكم يا روائع عصري :)
    اخوكم محمد HaMaDa4eVeR

    منقول من سوالف سوفت للكاتب HaMaDa4eVeR للفائدة مع أجمل تحية .

    0

     
  2. #2
    محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute محمد سراج has a reputation beyond repute الصورة الرمزية محمد سراج
    تاريخ التسجيل
    10 / 06 / 2005
    الدولة
    EGYPT
    العمر
    53
    المشاركات
    7,070
    معدل تقييم المستوى
    7753

    افتراضي مشاركة: تعلم كتابة الـ Plugin في الـ vBulletin


    مع تحيات


     
  3. #3
    سـاري is on a distinguished road الصورة الرمزية سـاري
    تاريخ التسجيل
    24 / 04 / 2006
    الدولة
    مجهولة
    المشاركات
    38
    معدل تقييم المستوى
    259

    افتراضي مشاركة: تعلم كتابة الـ Plugin في الـ vBulletin

    جزاك الله خير عنا جميع
    درس مهم جدا للجميع فعندما تعرف طريقه العمل تسهل عليهم طريقه التعامل

    يعطيك العافيه ان شالله

     
  4. #4
    صحبة is on a distinguished road
    تاريخ التسجيل
    15 / 07 / 2006
    الدولة
    مجهولة
    العمر
    53
    المشاركات
    38
    معدل تقييم المستوى
    256

    افتراضي مشاركة: تعلم كتابة الـ Plugin في الـ vBulletin

    روائع الفكر والعطاء في دروس منتجة لهذا المنتدى أو منقولة إليه

    شكراً...

     
  5. #5
    بوابة مكة is on a distinguished road الصورة الرمزية بوابة مكة
    تاريخ التسجيل
    03 / 06 / 2006
    الدولة
    مكة المكرمة
    العمر
    54
    المشاركات
    638
    معدل تقييم المستوى
    857

    افتراضي رد: مشاركة: تعلم كتابة الـ Plugin في الـ vBulletin

    الله يجزاك خير ويغفر لك ولوالديك

     

 
+ الرد على الموضوع
صفحة 1 من 3 1 2 3 الأخيرةالأخيرة

معلومات الموضوع

الأعضاء الذين يشاهدون هذا الموضوع

الذين يشاهدون الموضوع الآن: 1 (0 من الأعضاء و 1 زائر)

     

مواقع النشر (المفضلة)

مواقع النشر (المفضلة)

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك