Follow us on...
Follow us on Twitter Follow us on Facebook Watch us on YouTube

النتائج 1 إلى 2 من 2
  1. #1
    مسؤل سابق
    تاريخ التسجيل
    Aug 2008
    الدولة
    النادي الحبيب
    المشاركات
    861

    Icon30 آلية المتغيرات الخاصة بالقوالب في ملفات php / الخطاطيف للجيل الرابع


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

    في البداية ، أبارك لكم صدور النسخه في مستواها التطويري الثالث لكافة الأعضاء ،

    ما سأتحدث عنه هو القوالب وإضافتها بنظامها الجديد وسوف أناقش التالي :-

    1. آليه كاش القوالب مع تغير المتغير في هذا الجيل .
    2. أليه انشاء القوالب لعرضها بدون استخدام الداله eval
    3. كيفية انشاء المتغير لكي يعرض في القوالب بشكل سليم وخالي من المشاكل. أو بالاصح طباعه الصفحه بالكامل

    أليه كاش القوالب :-

    سابقاً كنا نستخدم الخطاف (Hook) - التالي cache_templates لعمل كاش للقوالب ، اي انه يتم استدعاء القوالب المخصصه لمنتجاتنا بدون ان نزيد استعلام . وايضاً لم يتغير اسم القالب في الجيل الجديد ، ولكن تغيرت الآليه .

    سابقاً كـ التالي :-


    $globaltemplates array_merge($globaltemplates, array(
        
    'my_template_name',
        
    'my_template_name1'
        
    'my_template_name2'
    )); 
    او كـ التالي :-


    $globaltemplates[] = 'my_template_name';
    $globaltemplates[] = 'my_template_name1';
    $globaltemplates[] = 'my_template_name1';
    ولكن في الجيل الجديد ، تغيرت الآليه مع وجود نفس الخطاف السابق ، اصبحت كـ التالي :-


    $cache array_merge($cache, array(
        
    'my_template_name',
        
    'my_template_name1'
        
    'my_template_name2'
    )); 
    أو

    $cache[] = 'my_template_name';
    $cache[] = 'my_template_name1';
    $cache[] = 'my_template_name1'
    بالنسبه لكاش القوالب ليس بالأمر الكبيرة / ولكنه مهم فأحببت ان اسهل العمل على اخواني ووقت البحث عن الآليه الجديدة

    سننتقل لما هو مهم الآن وهو القوالب وكيفية استخدامها :-

    سابقاً عندما نريد تعريف متغير يحتوي على قيمة قالب من قوالب المنتدى كنا نضعه في دالة eval مع عرض القالب بأستخدام fetch_template ولكن الآن تغيرت الآليه بشكل اراها أنا افضل بكثير عن سابقتها :-

    ساذكر الفروقات على شكل أمثله بالمقارنه بين الجيلين ليكون الأمر اسهل




    سابقاً

    eval('$myvar = "' fetch_template('my_custom_template') . '";'); 
    ونستخدم $myvar لعرض المحتوى على حسب الرغبه من اضافته في القوالب او دمجه او او او

    ولكن هنا الآن اصبح كـ التالي : -


    $myvar vB_Template::create('my_custom_template')->render(); 
    وهنا لم ننتهي ، حيث نستطيع استخدام $myvar في القوالب ولكن يُحبث ان نقوم بتعريفه كـ متغير كما ذكرناه في الموضوع السابق لكي يُعرض في القوالب . وساذكرها لاحقاً في نص هذا الموضوع ان شاء الله



    سابقاً كنا نعرض مانريده من بيانات في داله تكرار ، بحسب البيانات وهنا ساذكر فقط while لتعدد اسخدماها واسهلها ان شاء الله

    فلنقل ان عندنا بيانات جلبناها من قاعدة البيانات ، ونريد عرض النتائج بشكل متوالي :-

    القالب (my_custom_template):-


    <div$myresult[name], $myresult[email], $myresult[joindate] </div
    سابقاً : كنا نكتب التالي لتكرار البيانات :-


    while($myresult $vbulletin->db->fetch_array($myquery)) {
        eval(
    '$myvar .= "' fetch_template('my_custom_template') . '";');

    ونستخدم $myvar لعرض البيانات في القوالب بكل بساطه !

    ولكن في الجيل الرابع :-

    القالب :-

    [PHP]
    <div> {vb:raw myresult.name}, {vb:raw myresult.email}, {vb:raw myresult.joindate} </div>[/HTML]
    while($myresult $vbulletin->db->fetch_array($myquery)) {
        
    $templater vB_Template::create('my_custom_template');
        
    $templater->register('myresult'$myresult);
        
    $myvar .= $templater->render();

    ونستطيع استخدام
    $myvar 
    ولكن نحتاج لكي نمررها على داله ، لكي تصبح جاهزة للعرض بالآليه الجديدة .

    إذاً ، انتهينا من تعريف القوالب ، عرضها بالأليه الجديدة والآن سأصل لما يقارب النهايه لذلك ، وهو طباعه الصفحه بالكامل

    سابقاً ، نستخدم داله eval متظمنه لدالة الفيبولتن print_output على الشكل التالي :-

    eval('print_output("' fetch_template('my_final_custom_template') . '");'); 
    ولكن الآن الطريقة كـ التالي :- وهي تعريف المتغيرات السابقه كـ $myvar لعرضها والخ من تلك الأمور ، وتكون الطريقة كـ التالي :-

    $templater vB_Template::create('my_final_custom_template');
    $templater->register_page_templates();// setup header, footer, headinclude.
    $templater->register('myvar'$myvar);// my result from my loop. 
    print_output($templater->render()); 
    وإلى هنا اعتقد اني انهيت قسم القوالب ، وذكر ما تم تغييرة ،

    أطيب وارق تحية ،
    أخوكم /Max2008


    معا لنرجع النادي كما كان انت شارك وانت رد وانت ادع اعضاء جدد
    لا تقم بالتسجيل ان لم تكن تنوي الانضمام لاسرتنا

  2. #2
    عضو مشارك
    تاريخ التسجيل
    Dec 2010
    المشاركات
    48

    افتراضي


    مشكووووووووور ويعطيك العافية

    تحياتي



 

 

المواضيع المتشابهه

  1. اقوى عروض شركات الاستضافة (ادخل ولن تندم)
    بواسطة refaya في المنتدى قسم عروض شركات الإستضافه
    مشاركات: 3
    آخر مشاركة: 10-14-2010, 03:45 PM
  2. لغة php وكل شيء عنها (جديد الطرح) داخل النادي
    بواسطة max2008 في المنتدى قسم لغات البرمجه
    مشاركات: 26
    آخر مشاركة: 07-13-2009, 09:38 PM

   زوار هذه الصفحة من محركات البحث وصلوا عن طريق :

!

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

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

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

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