أهلا وسهلا بك زائرنا الكريم في JO1R FORUM | منتديات شباب و صبايا الأردن، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .

< درس > درس برمجة الـ modifiers

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



26-11-2011 07:21 صباحاً
معلومات الكاتب ▼
تاريخ الإنضمام : 16-07-2007
رقم العضوية : 46
المشاركات : 1,315
الجنس :
قوة السمعة : 429,537,324
السلام عليكم ورحمة الله وبركاته

في محرك القوالب سمارتي
كثيرا ما أحتاج الى برمجة modifier يقوم بعمل معين أحتاج الى تنفيذه على مستوى القالب، لا على مستوى كود php

كبداية وللتعريف بالـ modifier فهو دالة نقوم بكتابتها بعد المتغير داخل قالب السمارتي، لكي تقوم بتنفذ عملية معينة على قيمة هذا المتغير
مثلا وبفرض وجود متغير باسم $title يحمل قيمة ما هي عبارة عن نص
في حالة رغبتنا بعرض مايحتويه هذا المتغير بعد تحويله للحروف الكبيرة Uppercase فيمكننا استخدام الموديفاير upper كالتالي:
رمز Code:
{$title|upper}
وفي حالة رغبتنا في اظهار تاريخ اليوم عن طريق سمارتي نستخدم الكود التالي:
رمز PHP:
{$smarty.now|date_format:"%Y/%m/%d"}

لاحظ هنا ان الموديفاير او الدالة هي: date_format وقد سبقناها بالعلامة |
وحتى نمرر لها أول باراميتر وهو الطريقة التي نريد أن يظهر بها التاريخ استخدمنا العلامة : وتبعناها بالفورمات المطلوب

الآن نرجع لموضوع درسنا وهو طريقة برمجة موديفاير modifier خاص بنا يقوم بوظيفة معينة
1- قم بانشاء ملف بالاسم: modifier.arabic_date.php
2- احفظ هذا الملف داخل المجلد: smarty/plugins
3- انسخ هذا الكود الى داخل الملف:
رمز PHP:

لاحظ هنا ان اسم الدالة يجب أن يبدأ بـ smarty_modifier_ ويتبعه اسم الدالة الذي يجب أن يكون مطابق للمقطع الثاني من اسم الملف "arabic_date"

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

عند الرغبة في اظهار التاريخ في صورته الطويلة، لا نحتاج لتمرير اي باراميترز
رمز Code:
{$smarty.now|arabic_date}
عند الرغبة في اظهار التاريخ بالصورة القصيرة يجب أن نمرر الباراميتر short الى الدالة
رمز Code:
{$smarty.now|arabic_date:true}

أتمنى ان يكون الدرس قد افادكم
وبانتظار اي استفسارات





منقول من: درس [smarty] درس برمجة الـ modifiers
توقيع :OMRAN
ohgod

اضافة رد جديد اضافة موضوع جديد




الكلمات الدلالية
لا يوجد كلمات دلالية ..









الساعة الآن 08:21 AM