إنشاء موقع متعدد الصفحات ولكن الهيدر والفوتر به ثابتين
بحيث إذا إحتجت الى تغيير الهيدر أو الفوتر أو أحد العناصر الثابته , لا تقوم بتغييرها فى كل صفحات موقعك , بل فى صفحه واحده فقط لا غير
سوف يتكون موقعك من صفحات بهذا الشكل:

الملف المسمى index.php سوف يحتوى الكود التالى:
(مرفق فى نهاية الصفحه)
كل ما عليك الأن هو إستبدال النص المسمى:
بكود هيدر موقعك
والذى يفترض أن يكون شىء بالشكل التالى إن أمكن:
كود بلغة HTML:
<td>
<img src="logo.gif"></td>
وإستبدال النص المسمى
كود بلغة HTML:
<!-- Here goes your footer.. regards from doongoan -->
بكود فوتر موقعك
والذى يفترض أن يكون شىء بالشكل التالى:
كود بلغة HTML:
<td>
<img src="footer.gif"></td>
بهذا يصبح لهذه الصفحه هيدر وفوتر(حتى الأن)

يتبقى محتوى الصفحه
______________________
ففى حالة قيام شخص بإستدعاء الصفحه الرئيسيه:
www.yoursite.com/index.php
سوف يظهر له فى منطقة المحتوى .. محتوى الصفحه المسماه:
home.html والموجوده داخل مجلد files

وفى حالة قيام شخص بإستدعاء الرابط التالى:
www.yoursite.com/index.php?f=first
فسوف يظهر له فى منطقة المحتوى .. محتوى الصفحه المسماه:
page1.html والموجوده داخل مجلد files

وفى حالة قيام شخص بإستدعاء الرابط التالى:
www.yoursite.com/index.php?f=second
فسوف يظهر له فى منطقة المحتوى .. محتوى الصفحه المسماه:
page2.html والموجوده داخل مجلد files

وفى حالة قيام شخص بإستدعاء الرابط التالى:
www.yoursite.com/index.php?f=third
فسوف يظهر له فى منطقة المحتوى .. محتوى الصفحه المسماه:
page3.html والموجوده داخل مجلد files

______________________
يتبقى الأن سؤال لابد أنه تبادر الى ذهنك
من أين أعدل هذه الأسماء:
first
و
second
و
third
إرجع لكود صفحة الإندكس سوف تجد الثلاثة مسميات عدلهم كما تشاء
فعلى سبيل المثال يمكنك تسميتهم:
myprofile
و
recent
و
contact
كما أن روابط الملفات موجوده أيضاً فى كود ملف الإندكس
ليس هذا فقط بل إنه يمكنك إضافة أى عدد من الروابط
كل ما عليك هو تكرار ذلك المقطع:
كود PHP:
'third' => 'files/page3.shtml',
وتكتب فيه متغير جديد بدلا من third وتكتب أمامه مسار ملف جديد بدلا من page3.html
أخر نقطه تقنيه يمكن أن يتطرق لها ذهنك: ماذا لو إستذكى زائر الموقع وكتب متغير ليس موجود
بصفحة الاندكس مثلا:
www.yoursite.com/index.php?f=forth
فى هذه الحاله سوف يظهر له محتوى صفحة home.html
__________________
إنتهينا من الشرح
نبدأ النقاش
س-
ماذا يفيدنى بناء موقعى بهذه الطريقه؟
لماذا لا أكرر الهيدر والفوتر فى كل الصفحات
ج-
تخيل معى موقع مُكون من 100 صفحه
ليس من المنطقى أبداً أنه كلما طرأ شىء تريد تعديله فى الهيدر أو الفوتر
كود إحصائيات مثلاً تريد وضعه بالفوتر
فليس من المنطقى أن تضيفه يدوياً الى المائة صفحه
س-
ولماذا لا أستخدم صفحة إطارات, بحيث يحتوى القسم الأعلى منها على frame يستدعى ملف يحتوى الهيدر ,, ويحتوى الجزء الأسفل منها على frame يحتوى الفوتر والجزء الأوسط يستدعى ملف المحتوى الذى يتغير بتغير الرابط المطلوب؟
ج-
لأن هذه الطريقه أولاً: تضر بترتيب موقعك فى محركات البحث
(شىء ثابت ومعروف ان ال frame عدوه لل SEO )
وثانياً فهى تجعل محتوى موقعك مكشوف نسبياً
فيمكن لأى شخص بخبره متوسطه معرفة نظام موقعك ونظام روابطه(وهو شىء غير جيد , على سبيل المثال تجد جوجل تضع قيود عديده لمنع المستخدمين من معرفة نظام وتركيب ملفاتها الداخليه وذلك ليس هباءاً بل إنه لهدف , وهو منع الزوار من التذاكى وإكتشاف ثغرات )
كل هذا بالإضافه الى مشكلة تمدد الإطار الأوسط الذى يحتوى على منطقة المحتوى
فسوف تكون مضطر فى حالة إستخدام الإطارات (frames) الى تحديده بأبعاد معينه
فإذا كان إرتفاع الملف المُستدعى داخل الإطار أكبر من إرتفاع الإطار فسوف تظهر أشرطة التمرير الجانبيه

بعكس طريقتنا المذكوره فى الشرح والتى تسمح لمحتوى الصفحه المستدعاه فى منطقة المحتوى بأخذ كامل مساحتها ثم إستدعاء الفوتر
س-
أوليست علامة الإستفاهم أصلاً أحد الأشياء الغير مقبوله فى محركات البحث؟
ج-
نعم ولكن فى الجزء الثانى من الدرس سوف نتعلم تعديل الروابط بدون عمل تعديلات فى الملفات الاساسيه لكى نجعل الروابط ملائمه لمحركات البحث
س-
هل هناك مميزات أخرى لهذا الأسلوب؟
ج-
نعم , أهم المميزات على الإطلاق, أنك حصلت على ميزة كون الهيدر والفوتر لجميع صفحاتك ثابتين
وهى ميزه لا تحصل عليها إلا بال frames وقد ذكرنا لماذا لا نستخدمها , أو بإستخدام سكربت مجله (نيوك على سبيل المثال) وفى هذه الحاله فإن الطريقه المشروحه أفضل أيضاً لأنها تكون أبعدتك عن كل ثغرات المجلات والسكربتات المعروفه
فثق أنه كلما قلت معلومات الزوار عن موقعك زادت نسبة حمايته
كلما كانوا لا يعرفوا أى برمجيه تستخدم كان أفضل , لأنه إذا عرفوا أنك تستخدم سكربت وورد بريس على سبيل المثال فبكل بساطه سوف يبحثوا عن ثغرات له ويطبقوها جميعاً فى موقعك حتى ينجح أحدها
بالتالى فإن برمجيه غير منتشره تعنى تشتيت للهكر وتعنى أيضاً إبهار إضافى للمتصفح المتمرس الذى يفهم أن برمجيه غير معروفه وإحترافيه فى موقع بسيط تعنى إداره متميزه (وهو ما نسميه بالعامل النفسى)
أخيراً وأتمنى ألا يكون أخراً
اليكم ملف مضغوط يحتوى محتوى ال project كاملاً لمن لا يريد أن يقوم بالنسخ واللصق من الموضوع وأيضاً لغرض إتقاء ضياع أى أكواد فى الأكواد المحجوبه للمنتدى
ملاحظة أخيره:
الموضوع ليس للمبتدئين ولكن قريباً لنا مع المبتدئين دروس متعدده