+ الرد على الموضوع
صفحة 1 من 3 1 2 3 الأخيرةالأخيرة
النتائج 1 إلى 5 من 11
  1. #1
    ابو خـالد is on a distinguished road
    تاريخ التسجيل
    23 / 08 / 2005
    الدولة
    الرياض
    العمر
    34
    المشاركات
    6
    معدل تقييم المستوى
    235

    Smi73 تعلم بناء صفحة جديدةفي الـvBulletin بتقنيات متطورة

    السلام عليكم



    اليوم سوف ندرس سويا طريقة انشاء صفحة جديدة وتعزيز هذه الصفحة وتطويرها بقدر الامكان ولنستفد الاستفادة القصوى من امكانيات مكتبات الـvBulletin 3.5.x .



    إنشاء الصفحة بابسط ما يكن

    افتح ملف جديد وليكن اسمه mypage.php وليكن في نفس دليل منتداك ،،،

    وضع هذا الكود بداخله واحفظ الملف:

    كود PHP:

    <?php



    // ######################## اعداد البئية العامة ###########################

    error_reporting(E_ALL & ~E_NOTICE);



    // ##################### تعريف الثوابت المهمة #######################

    // تعريف اسم الملف بدون الحاق الامتداد الخاص به وذلك لكي تسهل عملية مناداته داخل المنتدى

    // وليكن الاسم نفس اسم الملف



    define('THIS_SCRIPT''mypage'); 



    // #################### استدعاء القوالب والبييانات ######################

    //مصفوفة القوال المستخدمة في هذا الملف

    $globaltemplates = array(

    // اسماء القوالب التي سوف يتم استدعاءها

    'mypage_temp1',// اسم القالب الاول

    'mypage_temp2',// اسم القالب الثاني

    );







    // ########################## الثوابت ############################

    require_once('./global.php');



    // #################### مسار كود الجافا سكريبت ########################

    $headinclude str_replace('clientscript'$vbulletin->options['bburl'] . '/clientscript'$headinclude);



    // ########################################################################

    // #########################بداية الكود الخاص بصفحتك ############################

    // ########################################################################



    $navbits = array(); 

    // عنوان الصفحة في الشريط 

    $navbits[$parent] = 'صفحتي المتطورة';



    $navbits construct_navbits($navbits);

    eval(
    '$navbar = "' fetch_template('navbar') . '";');// استدعاء قالب النافبار



    // استدعاء قوالبك الخاصة والتي عرفتها بالاعلى

    eval('print_output("' fetch_template('mypage_temp1') . '");');

    //############################################################################

    // .:: s u d a b e s t . c o m ::.

    //############################################################################

    ?>


    انتهينا من الملف ق بحفظه.



    الان نقم بإنشاء القوالب التي نريدها

    ولتكن هذه محتويات قالب mypage_temp1:

    كود PHP:

    $stylevar
    [htmldoctype]

    <
    html dir="$stylevar[textdirection]lang="$stylevar[languagecode]">

    <
    head><meta http-equiv="Content-Type" content="text/html; charset=windows-1256">

    $headinclude

    <title>$vboptions[bbtitle]</title>

    </
    head>

    <
    body>



    $header

    $navbar



    <table class="tborder" cellpadding="$stylevar[cellpadding]cellspacing="$stylevar[cellspacing]border="0" width="100%" 



    align="center">

    <
    tr>

    <
    td class="tcat">عنوان صفحتي المتطورة</td>

    </
    tr>

    <
    tr>

    <
    td class="alt1">هنا ضع اي شي تريد قوله :)</td>

    </
    tr>

    </
    table>



    $footer

    </body>

    </
    html


    انتهينا ، قم الان بطلب عنوان الملف mypage.php وانظر.

    أضافة اسم الصفحة في المتواجدون الان

    عندما تكن تنظر في المتواجدون الان بيظهر لك اسم المستخدم ومكان تواجده ، "مثلا : يقرا رسالة خاصة من "

    الان اذا اتى زائر وفتح هذه الصفحة سوف يظهر لك مكان تواجده باسم "Unknown Location" او " غير معروف"

    واليكم طريقة التعريف عبر الـPlugins أضف Plugins جديد و ضعه فيه الكود التالي :

    كود PHP:
    ProductvBulletin

    Hook Location
    online_location_process

    Title
    My Custom Location (Part1)

    Plugin PHP Code: if ($filename == 'mypage.php')

    {

    $userinfo['activity'] = 'test';

    }

    Plugin is ActiveYes 
    واحفظ

    كود PHP:
    قم باضافة Plugin جديد مره اخرى وضع فيه الكود التالي :

    ProductvBulletin

    Hook Location
    online_location_unknown

    Title
    My Custom Location (Part2)

    Plugin PHP Code: if ($userinfo['activity'] == 'mypage')

    {

    $userinfo['action'] = 'يشاهد صفحتي المتطورة'; /

    $userinfo['where'] = '<a href="./test.php?' $vbulletin->session->vars['sessionurl'] . '">هذه صفحتي المتطورة</a>'

    $handled true;

    }

    Plugin is ActiveYes 
    قم بالحفظ

    ( هنالك طريقة اخرى عبر الملفات ومعقدة نوعا ماء كنت استخدمها قبل 3.5 )

    انتهينا بحمد الله من تعريف اماكن التواجد.



    اعطاء صلاحيات المشاهدة لصفحتي



    هنالك طريقتين لعمل تحديد الصلاحيات بالنسبة للمجموعات وكلاهما يعتمدان على الشرط المنطقي " IF" ،، وسوف نستخدم اسهل الطرق .



    1- الطريقة الاولى عبر القوالب

    2- عبر الملف البرمجي



    في قالبك ضع هذا الشرط في المكان المناسب واحبذ بعد متغير الـ$navbar ، هذا الكةد يقم بعرض الصفحة اذا كان المستخدم ينتمي الى المجموعة رقم 6 ( وهي في العادة مجموعة المشرف العام)



    كود:
    <if condition="is_member_of($bbuserinfo, 6)">
    
    اذا كان المستخدم ينتمي للمجموعة 6
    
    <else />
    
    اعرض هذا
    
    </if>
    1

    لناخد مثال آخر ،،، اذا كنت تريد عرض الصفحة للاعضاء فقط

    كود PHP:
    <if condition="!$bbuserinfo['userid']"


    طريقة استخدام المتغيرات في القوالب

    1- المتغيرات العادية ، مثل $sudabest , $var1،، يمكنك استخدامها بكل يسر.

    2- متغيرات المصفوفات مثل $sudabest[hosting] ،، ولا تستخدم ابدا علامات الاقتباس المفردة او الزوجية، والا سوف يظهر لك خطا.

    3- متغيرات الكائنات او الاوبجيكت ،
    كود:
    {$sudabest->host['package']}
    ، تذكر الازواج من هذا النوع {} في البداية والنهاية



    * لاسباب امنية لا تستخدم ابدا مصفوفات الـ$_POST[], $_GET[], $_REQUEST حاول ا تتجنبها في قوالبك.



    إستخدام العبارات الشرطية



    كل قوالب الاصدار الثالث تدعم استخدام العبارة الشرطية IF في قوالبها

    مثلا:-
    كود PHP:

    <if condition="$somevbulletinvar">

    htmlcode

    <else />

    other html code

    </if> 


    انتبه لا يمكنك ان تستخدم عبارة else if في القوالب واذا كنت بحوجة الى استخدامها عليك بهذه الطريقة

    كود PHP:

    <if condition="$condition1">

    htmlcode

    <else />

    <if 
    condition="$condition2">

    more html code

    </if>

    </if> 


    وهكذا ........



    أنشاء رسالة خطا

    لانشاء رسالة خطا خاصة بك ينبغي ان تراعي :-

    1- انشاء عبارة جديدة في Front-End Error Messages

    2- يجب ان يكن اسم المتغير لهذه العبارة ان يبدا بي "error_"

    3- يجب ان تضع الدالة هذه في الملف البرمجي:

    كود PHP:
     eval(standard_error(fetch_error('error_mypagephrase'))); 
    وتاكد من تطابق متغير العبارة الذي عرفته مع error_mypagephrase



    انشاء رسائل اعادة التوجيه

    لإنشاء رسالة اعادة توجيه خاصة يجب ان تراعي :-

    1- تاكد بانه لايوجد نتيجة استعلام او اية نتيجة اخرى قبل هذه اعادة التوجيه.

    2- تعريف مسار صفحة اعادة التوجيه ، مثلا:-

    كود PHP:
     $vbulletin->url "mypage.php" $vbulletin->session->vars['sessionurl'] ."somevar=someval"
    3- تذكر باننا نستخدم دائما الاسم mypage.php .

    4- لاتنسى ان تستبدل الـsomevar=someval باسماء متغيراتك الخاصة التي تريد تمريرها للصفحة القادمة هذه.



    الان علينا بالقيام بإضافة عبارات رسالة اعادة التوجيه :-

    1- قم بإنشاء عبارة في مجموعة "Front-End Redirect Messages" ، ويجب ان تبدا بـ"redirect_" .

    2- اضف الكود التالي :-

    كود PHP:
     eval(print_standard_redirect('redirect_myphrase'truetrue)); 
    في المكان الذي تريد فيه رسالة اعادة التوجيه.



    بحمد الله وصلنا لنهاية هذا الدرس ، واتمنى اكن قد أفدتكم



    تحياتي القلبية لكم بالتوفيق

    --------------------------------------------------------------------------------------------------------

    المصدر

     
  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 الصورة الرمزية المودة
    تاريخ التسجيل
    17 / 08 / 2004
    العمر
    32
    المشاركات
    20,806
    معدل تقييم المستوى
    26158

    افتراضي مشاركة: تعلم بناء صفحة جديدةفي الـvBulletin بتقنيات متطورة

    شكراً لك اخي الكريم ... بارك الله فيك ... الشرح رائع ولموضوع هام جدا ومفيد ... تحياتي .

     
  3. #3
    تعب has a brilliant future تعب has a brilliant future تعب has a brilliant future تعب has a brilliant future تعب has a brilliant future تعب has a brilliant future تعب has a brilliant future تعب has a brilliant future تعب has a brilliant future تعب has a brilliant future تعب has a brilliant future الصورة الرمزية تعب
    تاريخ التسجيل
    18 / 09 / 2005
    الدولة
    الـ,,,ــعــوديــة
    المشاركات
    1,385
    معدل تقييم المستوى
    1771

    افتراضي مشاركة: تعلم بناء صفحة جديدةفي الـvBulletin بتقنيات متطورة

    اهلا وسهلا اخوي

    الله يعطيك العافيه ويبارك فيك

    الف شكر

    لك مني أجمل تحيه

     
  4. #4
    ابو خـالد is on a distinguished road
    تاريخ التسجيل
    23 / 08 / 2005
    الدولة
    الرياض
    العمر
    34
    المشاركات
    6
    معدل تقييم المستوى
    235

    افتراضي مشاركة: تعلم بناء صفحة جديدةفي الـvBulletin بتقنيات متطورة

    حاضرين حبيبي

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

    افتراضي مشاركة: تعلم بناء صفحة جديدةفي الـvBulletin بتقنيات متطورة

    جزاك الله خير اخوي
    درس مفيدلمن يرغب في تطوير معلوماته ومهاراته
    يعطيك العافيه ان شالله

     

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

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

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

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

     

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

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

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

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