إضافة المودات2-الإضافة تتم على السمات الغير افتراضية (كل السمات ما عدا الافتراضية ) :
إن smf عنده تعامله مع السمات الغير الافتراضية فإنه يستخدم ملفات هذه السمات لكن قد تلاحظ أن كثير من السمات الغير افتراضية لا تملك كل الملفات و هذا طبيعي حيث لا يوجد داعي لإعادة تصميم بنية بعض الصفحات مثل قائمة الأعضاء إلخ
لكن يظل تطبيق التنسيقات و الصور المستخدمة ضمن السمة الغير الافترضية تطبق على الصفحات الغير موجودة ضمن السمة أي أن smf في حال عدم إيجادها لملف معين ضمن السمة الغير الافتراضية فإنها بشكل افتراضي ستأخذ الملفات المقابلة للمفات الغير المجودة بالموجودة ضمن مجلد السمة الافتراضية و تطبق عليها تنسيقات السمة المستخدمة
و بالتالي الخطوة الأولى من أجل تثبيت المودات هو تثبيت هذا المود على السمة الافتراضية
ثانيا في حال كان المود يستخدم بعض الملفات الموجودة ضمن السمة الغير الافتراضية فعليك إحداث التغيرات يدويا و هذه هي القواعد المتبعة من أجل ذلك :
1-حمل المود المراد تثبيته على جهازك
2-فك ضغط الملف المضغوط
XML :
ابحث ضمن الملفات عن الملف ذي اللاحقة .xml يكون في العادة ذو اسم modification.xml أو اسم_المود.xml
1-افتح الملف باستخدام المفكرة أو أي محرر نصوص تجده مناسبا
2-ابحث ضمن النص عن السلسلة المحرفية التالية
<file name="...">
حيث ستجد ضمن قوسي التنصيص اسم الملف الذي سيجرى عليه التعديل
3-ابحث عن الملف الذي ستجد اسمه في الخطوة السابقة
4-< operation>...</operation> ستحدد العملية الواحدة التي ستقوم بها على الملف الذي وجدته
5-ضمن الترويسة السابقة ستجد نوعين من الترويسات الأخرى و هي
<search position="...">...</search> and <add>...</add>.
كما توجد الترويسة التالية
<![CDATA[ and ]]>
حيث هذه لا تعتبر جزءا من الكود الذي ستبحثون عنه و إنما وضع لكي لا يحدث اختلاط بين كود html و كود xml
عادة هنا يكون الجزء الذي يسبب الارتباك
هذه الواصفات التي ستضاف إلى ترويسة
<search position="...">
حيث ستكون من الشكل
<search position="اسم_الواصفة">
و التي ستحدد أي سيكون موضع الكود الذي نبحث عنه و ليس مكان الكود الذي نريد أن نضعه
after -يجد الكود الذي نبحث عنه ضمن الملف و يضع الكود المراد وضعه قبل الكود الذي بحثنا عنه
before -يجد الكود الذي نبحث عنه ضمن الملف و يضع الكود المراد وضعه بعد الكود الذي بحثنا عنه
و هناك واصفتان مهمات أيضا ويجب فهمها جيدا
end -تضع الكود المراد وضعه في آخر الملف .
replace - يجد اكلود الذي نبحث عنه ضمن الملف و يضع محله الكود الذي نريد أن نضيفه للملف .
مثال :
<file name="$themedir/Display.template.php">
<operation>
<search position="replace"><![CDATA[
// Show the anchor for the top and for the first message. If the first message is new, say so.
]]></search>
<add><![CDATA[
global $bar_exps, $bar_posts;
// Show the anchor for the top and for the first message. If the first message is new, say so.
]]></add>
</operation>
</file>
و الذي معناه أن نفتح الملف Display.template.php و أن نبحث عن الكود التالي :
// Show the anchor for the top and for the first message. If the first message is new, say so.
وأن نضع محله الكود التالي :
global $bar_exps, $bar_posts;
// Show the anchor for the top and for the first message. If the first message is new, say so.
ملاحظات :
- عند إضافة المود بالطريقة التقليدية على السمة الافتراضية فإن التعديلات ستطبق على ملفات ال source أيضا أي أن ذلك سيريحك من تعيدل ملفات الsource
و بالتالي عليك تعيدل الملفات الموجودة فقط ضمن السمة التي تستخدمها في حال عدم إيجادك للملف ضمن السمة التي تستخدمها فإن التعديل قد تم على ملفات السمة الافتراضية حيث أن المنتدى سيستخدمها لذلك لست مضطرا إلى تعديل هذه الملفات أيضا
- في حال فشل عملية تعديل أي من الملفات الموجودة ضمن السمة الافتراضية أو ضمن مجلد ال source فعليك تعديل هذه الملفات يدويا لكن يجب عليك الانتباه عند التعديل على ملفات ال source لأنها قد تسبب مشاكل كثيرة في حال وضع الكود في غير محله
ليس XML :
في حال لم تجد ملف ذو لاحقة xml و إنما وجدت ملف ذي لاحفة .mod (و هذا ضمن المودات القديمة )
1-افتح هذا الملف بمحرر نصوص كالمفكرة أو أي محرر نصوص قد تجده مناسبا
<edit file>...</edit file>
حيث ستجد ضمنه اسم الملف الذي ستقوم بالتعديل عليه ( و أنت تبحث عن الملفات الموجودة ضمن السمة التي تستخدمها فقط )
2-في حال وجدت الملف ضمن مجلد السمة التي تستخدمها اذهب إلى الترويسة التي توجد ضمنها و هي
<search for>...</search for>
و التي ستتضمن الكود الذي ستبحث عنه ضمن الملف و ستجد بعدها الترويسات التالية
3- <add after>...</add after> و التي هدفها إضافة الكود المراد وضعه بعد الكود الذي بحثنا عنه
<add before>...</add before> و التي هدفها إضافة الكود المراد وضعه قبل الكود الذي بحثنا عنه
<replace>...</replace> و التي هدفها وضع الكود المراد وضعه محل الكود الذي بحثنا عنه
مثال
<edit file>
Themes/default/Display.template.php
</edit file>
<search>
// Show the anchor for the top and for the first message. If the first message is new, say so.
</search>
<replace>
global $bar_exps, $bar_posts;
// Show the anchor for the top and for the first message. If the first message is new, say so.
</replace>
و الذي معناه أن نفتح الملف Display.template.php و أن نبحث عن الكود التالي :
// Show the anchor for the top and for the first message. If the first message is new, say so.
وأن نضع محله الكود التالي :
global $bar_exps, $bar_posts;
// Show the anchor for the top and for the first message. If the first message is new, say so.