| دروس التعامل مع الثيمات: كيف تغير شكل صفحات موقعك , التعامل مع القوالب | |||
|
|||
السلام عليكم و رحمة الله ما هي القوالب ؟ القوالب هي عبارة عن ملفات html تتحكم في تصميم عرض كل صفحة من صفحات الموقع , التعديل علي القوالب يمكننا من تغيير شكل اي صفحة من صفحات الموقع ما دمنا نعرف ملف القالب الخاص بها... اين توجد القوالب ؟ نجد ملفات القوالب داخل مجلدات البرامج في المجلد templates ايضا هناك نسخة منها في قاعدة البيانات . لكن بما ان هناك نسختين ,,, اي منهما يتم استخدامها في عرض الصفحات ؟ الاجابة عن هذا السؤال ,,, اعتقد انك يمكنك ان تحدد ايهما يتم استخدامه من لوحة التحكم >> التعديلات العامة>>تحديث مجلد الثيمات بشكل تلقائي ؟ (( هذه المعلومة انا مش متأكد منها بالظبط )) اختر نعم و سيتم اعتماد الشكل طبقا لملف القالب , اختر لا و سيتم اعتماد الشكل من القالب المخزن في قاعدة البيانات لم افهم , تحديدا اين توجد القوالب التي تتحكم في تصميم الصفحات ؟؟ لو افترضنا انك تريد التعديل علي شكل الصفحة الرئيسية للمنتديات , ادخل الي المسار التالي www/modules/newbb/templates/ ستجد ملفات قوالب html ,,, الملف newbb_index.html هو الملف الذي يتحكم في الصفحة الرئيسية ايضا مثال اخر , الملف newbb_item.html يتحكم مثلا في شكل الموضوع الواحد .....و هكذا هذه القوالب كتبها مبرمجوا البرنامج , و كان من الممكن اختيار اي اسماء لكن يتم الاتفاق عادة علي اختيار اسماء معبرة للتسهيل فيما بعد ... ملحوظة : تم اعتماد اسلوب جديد في القوالب , بالاضافة لمجلد templates يمكنك ان تضع القوالب التي تم التعديل عليها في مجلد الثيم المستخدم. مثال , القالب السابق بعد التعديل عليه ستضعه في الرابط التالي www/themes/theme_name/modules/newbb/newbb_index.html ...... المكان الثاني الذي يتم وضع القوالب به هو قاعدة البيانات و للوصول لهذه القوالب ادخل الي لوحة التحكم >> قائمة البرامج>>لوحة التحكم العامة>>القوالب و قد تم شرح هذا الموضوع في درس سابق في عرب زووبس بواسطة اخونا فوقا ماذا احتاج لاستطيع التعديل علي القوالب وتغيير شكل احد الصفحات؟ 1- تحتاج لخبرة بلغة html و لغة css , خبرة جيدة جدا , وان تكون ممارس جيد لها. 2- الصبر.و صفاء الزهن. 3- خبرة بسيطة بلغة smarty . 4- برنامج محرر نصوص , انصحك بشدة بالمحررات الاحترافية اليدوية مثل notepad++ حيث النوتة العادية لن تنفع لكبر احجام الاكواد , محررات صفحات الويب مثل frontpage يفضل الابتعاد عنها. 5- سيرفر محلي مركب عليه زووبس و البرنامج المراد تغيير صفحاته , ويجب ان يكون ممتلئ بالمقالات او المواضيع , انصح بشدة ان تكون واضع نسخة كاملة من موقعك . 6- برامج مساعدة مثل , برنامج صور كالفوتوشوب و برنامج مقارنة كـbeyond compare فلنبدأ العمل ,,, تابع معي المثال التالي. عمل تغيير بسيط في تصميم الصفحة الرئيسية للاخبار, لو افترضنا انك قد استخدمت برنامج news كبرنامج للاخبار في موقعك لو افترضنا انك تريد ان تغير في تصميم عرض الخبر , مثلا نريد ان نضع سهم بين القسم و الخبر اخبار عامة >>>>ارتفاع عدد الاصابات.......الخ اولا نجهز الصور التي نريدها - ان احتاجتها - و نرفعها الي المسار www/modules/news/images/ او اي مسار تريده ثانيا نفتح المسار www/modules/news/templates/ سنجد قائمة بملفات القوالب افتح ملف الصفحة الرئيسية و هو هنا news_index.html و هذا هو الكود اريد ان اذكرك قبل القراءة ان برنامج المقالات news به خيار يمكنك من تحديد عدد الاعمدة في الصفحة الرئيسية , انظر كيف سيتم تطبيق الخيار علي التصميم
الان فهمنا من الكود السابق ان مربع المقال موجود في الملف news_item افتح الملف news_item.html
من الشرح السابق اتضح ان بسهولة تم وضع الاسهم >>> كما ترا
النتيجة النهائية مثل الصورة. ![]() ملحوظة هامة جدا : عند تطبيقك للخطوات السابقة , و حفظ التعديلات علي الملفات , احيانا لا يحدث تغيير في تصميم الصفحة ,,,, ربما يكون السبب هو انك نسيت تغيير خيار "تحديث مجلد الثيمات بشكل تلقائي " من لوحة التحكم ,,,,,,,,,,,,, الحل الثاني هو تفريغ مجلد xoops_data/cashes/smarty_compile هذا المجلد يحتوي علي ملفات مخزنة من القوالب للوصول السريع اليها يتبع >>>>>>> >>>>>>>>>>>>>>>>>>> يجب قراءة الجزء الاول , للقراءة ادخل من هنا http://www.arabxoops.com/modules/newb ... hp?topic_id=7880&forum=13 يبدو اننى سهوت و وضعت الجزء الاول في منتدي تركيب و ترقية المجلة ,,, مش عارف ازاى مأخدتش بالي ,,, الواحد بدأ يكبر ولا ايه :) بسم الله الرحمن الرحيم كيف نقرأ ملفات القوالب؟؟؟ كما ذكرت سابقا لتقرأ ملفات القوالب تحتاج الي خبرة عميقة بلغة html و css وخبرة بسيطة بلغة smarty يجب استخدام محرر نصوص متقدم , مثل notepad++ ما هي لغة سمارتي Smarty ???? لغة سمارتي هي الوسيط بين php و الhtml باستخدام لغة سمارتي نحن نضع النصوص الثابتة " ترجمة البرامج و المجلة " والنصوص المتغيرة " اسم العضو , نص المقال , صورة العضو ,.....الخ" داخل تصميم القالب سمارتي اوسع من ذلك ايضا , فهي لغة تمكنك من وضع جمل شرطية برمجية و ادراج قوالب داخل قالبك , و الكثير من المميزات التي سيتم ذكرها في درس اخر... كما تعلم ان وسوم لغة html تكون هكذا
<html tags>.....</html tags>
فأن وسوم لغة سمارتي تكون هكذا
<{smarty}>.......<{/smarty}>
هناك وسوم سمارتي عامة , كقواعد if و include و غيرها وهناك وسوم سمارتي خاصة بزووبس مثل الوسوم الدالة علي اسم المستخدم , اسم الموقع , عنوان الصفحة , و الروابط .....الخ و اخيرا ستجد وسوم سمارتي خاصة بالقالب نفسه يصنعها مبرمج الموديل لاستخدامها في القوالب الخاصة ببرنامجه,,, مثلا في الدرس السابق في الملف news_item.html
كما ترى فان سمارتي واسعة و تحتاج لدرس منفصل ... المثال الثاني سيتضمن تغيير شكل بلوك تسجيل الدخول و بلوك لوحة تحكم العضو في هذا المثال نريد ان نري التغيير عند استخدام ثيم معين فقط وليس في كل الثيمات لو افترضنا انك تستخدم الثيم mca_blue في موقعك لو افترضنا انك تريد ان تغير شكل بلوكي تسجيل الدخول و قائمة العضو واجعلهم اكثر حيوية , و لو افترضنا انني اريد هذا التغيير عند استخدام هذا الثيم فقط , لكن في باقي الثيمات سيتم استخدام التصميم الاصلي الخطوة الاولي سنحدد ما هي الملفات المطلوب التعديل عليها.... هذان البلوكان تم انشاؤهما ببرنامج لوحة التحكم العامة system اذن فان ملفات القوالب تجدها في المسار www/modules/system/templates/ وبما اننا نبحث عن قوالب البلوكات فسندخل للمجلد blocks اي ان مسار قوالب هذان البلوكان هو www/modules/system/templates/block نظرة سريعة علي اسماء الملفات سنعرف ان الملفين المراد التعديل عليهما هما system_block_user.html system_block_login.html لو افترضنا ان اسماء البلوكات كانت معقدة و لم تستطع ان تعرف اي ملف هو ملف القالب المطلوب....؟ ادخل الي موقعك , سجل الدخول , اذهب الي لوحة الادارة >>> صفحة التحكم في القوالب... وهذا رابطها http://www.yoursite.com/modules/system/admin.php?fct=tplsets ستجد مجموعة القوالب المستخدمة default و تجد قائمة بالبرامج المركبة , ادخل الي قائمة قوالب برنامج المطلوب و هو هنا "لوحة التحكم العامة" ,, ستجد جدولين , واحد لقوالب الصفحات و الثاني لقوالب البلوكات , ابحث في قوالب البلوكات ستجد وصف لكل ملف ,,, بعد ان حددنا الخطوة الثانية نسخ الملفات للثيم بما اننا سنطبق التصميم الجديد علي ثيم معين وهو mca_blue ادخل الي ملف الثيم و انشي المجلدات الاتية مجلد modules داخل الثيم مجلد system داخل المجلد السابق مجلد blocks داخل المجلد السابق اي ان المسار النهائي المطلوب هو www/themes/mca_blue/modules/system/blocks وقيس علي هذا المثال عند التعديل علي اي قوالب لبرامج اخري ... بعد ذلك ضع في هذا المسار الملفين الذي تم تحديدهما system_block_user.html system_block_login.html الخطوة الثالثة تعديلات ملف قالب "تسجيل الدخول" ,,, مطلوب وضع صورة كبيرة جميلة قبل فورم التسجيل وضع جملة "مرحبا بالزائر الكريم..." اولا نجهز الصورة المطلوبة ثم ارفعها داخل اي مجلد في مجلد الثيم وليكن في المسار التالي www/themes/mca_blue/images/ ثانيا نفتح ملف القالب في المسار التالي www/themes/mca_blue/modules/system/blocks/system_block_login.html لوضع الصورة قبل الفورم ضع هذا الكود
<img id="nett_keysimg" src="/mca/class/xoopseditor/spaw2/empty/<{xoImgUrl images/password.png }>" />
اما الفقرة الترحيبية فستكون بعدالصورة مباشرة كالتالي
لاحظ اننى قد اعطيت معرف id للصورة اسمه #nett_keysimg و معرف اخر للفقرة الترحيبية #nett_loginmsg باستخدام هذه المعرفات يمكنني التحكم في خصائصهما من حيث تنسيق الخطوط و التوسيط و المحاذاة من خلال ملف الستايل فى الثيم. الكود النهائي لملف القالب ككل سيكون بالصورة التالية مع الشرح
افتح ملف الستايل style.css -او ايا كان اسمه- الخاص بالثيم بمحرر css مناسب و اضف في اخر الملف التعريفات الخاصة بالصورة و الرسالة الترحيبية
انظر النتيجة النهائية... واتركك مع ابداعتك في ما تصمم الخطوة الرابعة.. تعديل قالب "قائمة العضو",,, المطلوب وضع صورة العضو اعلي القائمة وضع رسالة ترحيبية باسم الدخول قالب قائمة العضو الاصلي يحتوي الكود التالي
لو شرحنا الكود سنجد ان القائمة موجودة داخل جدول من خلية واحدة اول جزء ف القائمة عبارة عن قاعدة شرطية للتأكد ان كان المستخدم برتبة مدير ام لا
للمزيد من التوضيح لقاعدة if الشرطية سنزيل الاكواد و نشرحها من جديد
وهناك متغيرات كثيرة غير $xoops_isadmin هناك مثلا $block.new_messages وهذا عبارة عن متغير يحتوي علي عدد الرسائل الجديدة الكود التالي مسئول عن كلمة "الوارد" التي تظهر في قائمة العضو , وسيتم وضع عدد الرسائل في حالة وجود رسائل واردة جديدة طبعا هذه الكلمة " الوارد " عبارة عن ثابت لغة بسمارتي ايضا انظر كيف يتغير التصميم طبقا لوجود شرط "هل هناك رسائل جديدة ام لا..."
وهذا شرح الكود بالتفصيل ...
و لوضع الصورة و الرسالة الترحيبية اعلي القائمة , سنضع الكود التالي فوق الامر table
طبعا يمكنك استخدام الcss للتحكم في التنسيقات وهذه هي الصورة النهائية للبلوكين بعد اعتماد التغييرات ****** ![]() ****** ![]() ****** بعد هذا الدرس , اتمنى انك تستطيع تعديل اي صفحة في موقعك ***************************** انتظر رأي اخوتي في الموقع و هل هناك احد يرغب بأضافة اي معلومة ؟؟؟ |
|
ترتيب الدرس : 8.33 (3 صوت) صوت للدرس |
| العودة للقسم | العودة الي الصفحة الرئيسية |






