نظام نقاط التيمبلت زون

ديموفنف توفر لك نظام إحترافي سلس للتيمبلت زون ، حيث أن التيمبلت زون كتوضيح هي عباره عن مراكز نقاط يتم زرعها و توزيعها داخل ملفات الـقوالب سواء لديموفنف أو لبرمجيتك و التي تسمح من خلالها سواء لك أو للمبرمجين الأخرين من إضافة قوالب خاصة بهم و إظهارها في هذه النقاط ، و التي تتيح للمبرمج الفرصة وقتها في إضافة قوالبه دون الاضطرار إلي تعديل ملف المصدر للقالب الرئيسي ، هناك نقاط أساسية يجب فهمها عن نظام نقاط التيمبلت زون بديموفنف :

  • يتم حفظ نقاط الهوك في ملف xml حيث في ديموفنف يتواجد ملف نقاط الهوك في المسار include/xml بإسمtemplate_zones.xml ، أما في البلجن فيتواجد ملف نقاط الهوك في المسار include/pluginfolder/xml/pluginfolder-template_zones.xml مع إستبدال pluginfolder بإسم مجلد البلجن.

(هام : يجب أن يتم حفظ ملف نقاط التيمبلت زون بنفس صياغ هذا الإسم في البلجنات)

 

مثال لملف الـXML  لنقاط التيمبلت زون :

[code] // template zone points groups point1 point2 [/code]

ملاحظات :

  • يتم تقسيم نقاط التيمبلت زون إلي مجموعات ، كل مجموعة تحتوي النقاط الخاصه بها.
  • الخاصية module في الوسم  zonemodule هو إسم مجموعة نقاط التيمبلت زون.
  • الوسم zone يحتوي علي إسم نقطة التيمبلت زون.

أساسيات :

      زراعة نقطة التيمبلت زون في مكان داخل ملف الـقالب :

يمكنك زراعة نقطة إرتكاز تيمبلت زون في ملف القالب في أي مكان تريده من القالب ، من أجل إتاحة إستدعاء هذه النقطة ، مع ملاحظة أنه يجب أن تكون هذه النقطة معرفة مسبقاً في ملف نقاط التيمبلت زون للبلجن.

PHP :
{* php buffer start *}  
{* php buffer end *}

يتم وضع هذا الوسم داخل ملف القالب في المكان الذي تريده مع إستبدال zonepoint بـ إسم نقطة الزون بوينت الخاصة بك ، حيث يقوم نظام القوالب أثناء معالجته للقالب ، بإستدعاء كل القوالب المرسلة إلي هذه النقطة من أجل دمجها بالقالب الذي يتم معالجته و إظهارها فيه. 

      إرسال قالب إلي نقطة تيمبلت زون :

من خلال البلجن الخاص بك ، تستطيع إرسال القالب الخاص بك إلي نقطة التيمبلت زون عن طريق إستدعاء الدالة add_template_zone()ووضعها في دالة ، و من ثم إرسال هذه الدالة إلي نقطة هوك بإستخدام دالة add_hook().

مثال :

في ملف دوال البلجن الموجود علي المسار include/plugins/pluginfolder/pluginfolder_plugin.php

مع ملاحظة إستبدال pluginfolder بـ إسم مجلد البلجن.

ضع الدالة add_template_hook() داخل دالة ، و من ثم إستخدم الدالة add_hook() لإرسالها إلي نقطة الهوك ، حيث أن دالة add_template_hook() تقبل 3 متغيرات :

  • المتغير الأول (إجباري) : وهو يحمل مسار ملف القالب المراد إرساله بدون وضع إمتداد ملف القالب ، المسار يكون عبارة عن إسم مجلد البلجن ثم مجلدtpl الخاص بقوالب البلجن ثم إسم القالب.
  • المتغير الثاني (إجباري) : إسم نقطة التيمبلت الزون التي سترسل لها.
  • المتغير الثالث (إختياري) : قيمة true/false ، يتم تعينه إلي true في حال كان المسار للقالب المرسل خارج مجلد البلجنات include/plugins .

PHP :
{* php buffer start *}  
{* php buffer end *}
 

  • يمكن إرسال عدة قوالب إلي أكثر من نقطة تيمبلت زون كدفعة واحدة مباشرة بدالة add_template_hook مباشرة بدون الحاجة لإستدعائها مره لكل قالب و ذلك عن طريق تمرير مصفوفة إلي الدالة ، المفتاح فيها عبارة عن مسار ملف القالب المراد إرساله ، و قيمته تكون عباره عن إسم نقطة التيمبلت زون التي سترسل لها.

PHP :
{* php buffer start *}  
{* php buffer end *}

ملاحظة : إستبدل pluginfolder بـ إسم مجلد البلجن ، و templatefile بـ إسم ملف القالب ، و zonepoint بـ إسم نقطة الزون بوينت التي سترسل لها القالب ، و hook_point بـ إسم نقطة الهوك التي سترسل إليها الدالة التي تحمل الدالة add_template_hook() ، و إستبدل function_name بـ إسم الدالة التي تحمل الدالة add_template_hook().

هل كانت المقالة مفيدة ؟ 0 أعضاء وجدوا هذه المقالة مفيدة (0 التصويتات)