فى الدرس السابق، أنهينا كل ما يخص الهيدر والفوتر، وأنهينا كل ما يخص القوائم وتسجيلها فى ووردبريس، والآن إنتهينا من ملفيّ header.php، و footer.php نهائيًا، الآن سنبدأ فى العمل على المحتوى الذي فى المنتصف، أى الجزء الذي يحتوى على على عناوين التدوينات وجزء من بداية كل تدوينة، ثم رابط مشاهدة كامل التدوينة، ثم روابط التدوينات السابقة، والتدوينات الحديثة، هذا ما تجده فى رئيسية أى قالب ووردبريس، وهذا ما سنقوم به فى هذا الدرس -بإذن الله-.
- برمجة نظام الصفحات.
المقصود ببرمجة نظام الصفحات هو مثل ما بالصورة:
قبل البدء فى برمجة المحتوى سنقوم ببرمجة نظام الصفحات لأنه أسهل ما في الدرس، أولاً سنقوم بفتح ملف التصميم design.html والذي هو من المفترض أن يحتوى على التصميم كاملاً بلغة HTML، ثم بعد ذلك سنبتعد عن الجزء الذي قمنا بنسخه فى ملف header.php، وسنبتعد أيضًا عن الجزء الذي قمنا بنسخه فى ملف footer.php، وسيتبقى لنا فى الأخير الجزء الذي يحتوى على التدوينات وأسفلهم رابطين للتدوينات الأقدم ، والتدوينات الأحدث.
سنقوم بنسخ كود HTML لهذا الجزء، ثم نقوم بفتح ملف index.php، ثم نقوم بلصق الكود فى هذا الملف ولكن أين سيتم نسخه بالتحديد؟
سيتم نسخه بعد دالة get_header مباشرةً !
من المفترض أنه فى أسفل هذا المحتوى رابطين للتدوينات الأقدم، والتدوينات الأحدث كتلك الروابط:
ببساطة الآن سنقوم بإستبدال رابط Older Posts أىّ التدوينات الأقدم بدالة next_posts_link، وهي دالة تأخذ بارامتر واحد وهو النص الذي سيُعرض، وفى حالتنا تلك هي كلمة Older Posts، وسيصبح الكود كالتالي:
أما بالنسبة لـNewer Posts سيتم إستبداله بدالة previous_posts_link ، وهي دالة تستخدم بارامتر واحد وهو أيضًا النص الذي سيتم عرضه، فيصبح لدينا
المقصود ببرمجة المحتوى هو برمجة عرض التدوينات فى الرئيسية كما بالصورة التالية:
من هنا يبدأ الجزء الصعب، خصوصًا على غير مبرمجيّ PHP، أو المبتدأين بها، لكنني سأحاول تبسيط الموضوع، أولاً نحن لن نعرض التدوينات إلا إذا كان يوجد تدوينات أصلاً، أليس كذلك؟!
لذلك سنقوم بعمل جملة شرطية للتحقق من إذا كان يوجد تدوينات أو لا، وسنستخدم فى الجملة الشرطية دالة have_posts، وهي دالة ترجع قيمة True إذا كان يوجد تدوينات فى المدونة، وإن لم يكن هناك تدوينات ترجع القيمة False، لذلك سيكون الكود كالتالي:
if(have_posts()){
//سيتم تنفيذ هذا الكود إن كان يوجد تدوينات
}else{
//سيتم تنفيذ هذا الكود إن لم يكن هناك تدوينات
}
?>
if(have_posts()){
//سيتم تنفيذ هذا الكود إن كان يوجد تدوينات
}else{
?>
There is no Posts !
}
?>
الآن فى الجزء الخاص بوجود تدوينات، نريد أن نقوم بعمل لووب Loop لكي يتم عرض جميع التدوينات فى الصفحة، لذلك سنقوم بعمل While Loop لدالة have_posts، ثم بداخل جسم اللوب سنقوم بكتابة دالة the_post وهي دالة لإعداد وضع التدوينات، لذلك سيصبح الكود كالتالي:
if(have_posts()){
while(have_posts()){
the_post();
}
}else{
?>
There is no Posts !
}
?>
if(have_posts()){
while(have_posts()){
the_post();
?>
}
}else{
?>
There is no Posts !
}
?>
1- دالة the_permalink، وهي لطباعة رابط التدوينة.
2- دالة the_title، وهي لطباعة عنوان التدوينة.
3- دالة the_time، وهي لطباعة تاريخ نشر التدوينة.
4- دالة get_option، وهي لأخذ قيمة أيّ من خيارات الووردبريس، فمثلاً إذا قمت بإدخال بارامتر بها date_format فسوف يرجع قيمة صيغة التاريخ المُحددة فى لوحة تحكم الووردبريس، يمكنك مشاهدة المزيد من البارامترات وما يرجعه كل بارامتر من هنا.
5- دالة the_author_posts_link، وهي لطباعة اسم كاتب التدوينة على شكل رابط.
6- دالة the_category، وهي لطباعة تصنيفات كل تدوينة، وهي تأخذ بارامتر واحد وهو الفواصل بين كل تصنيف فى حال كانت التدوينة مُدرجة فى أكثر من تصنيف.
ينقصنا الآن ثلاثة أشياء، وهم كالتالي:
1- عرض جزء من التدوينة.
لعرض جزء من التدوينة سنحتاج إلى دالة the_content_rss ، وسنستخدمها بالصيغة التالية:
the_content_rss('', TRUE, '', 50);
مع إستبدال رقم 50 لعدد الحروف التي تريد عرضها من كل تدوينة.2- عرض عدد التعليقات.
لعرض عدد التعليقات سنحتاج إلى التححق من إن كانت كانت التعليقات مفتوحة عبر دالة comments_open وأيضًا إن كانت التدوينة غير محمية بباسوورد، وهذا يتم عبر دالة post_password_required، فى حال تحقق comments_open وعدم تحقق post_password_required سيتم عرض عدد التعليقات عبر comments_popup_link، ليصبح الكود بالشكل التالي:
if(comments_open() && !post_password_required()){
comments_popup_link('0','1','%','comments');
}
?>
3- عرض Thumbnail للتدوينة.
لعرض صورة Thumbnail للتدوينة نحتاج إلى وضع تحقق لنعرف ما إذا كانت التدوينة تحتوى على صورة Thumbnail أو لا، ويتم هذا التحقق عبر دالة has_post_thumbnail، ثم بعد ذلك يتم عرض الصورة بإستخدام دالة the_post_thumbnail، ليصبح الكود كالتالي:
وبالأخير يجب أن نقوم بشيء إضافي، لن يؤثر معنا كثيرًا، لكنه من الأشياء الأساسية، وهي أنك يجب أن تضيف ID فى الـDiv الذي يتم عرض التدوينة فيه، واسم هذا الـID سينقسم جزئين الجزء الأول وهو كلمة post ثم شرطة - ثم طباعة دالة the_ID، كالتالي:
while(have_posts()){
the_post();
?>
the_title(); ?>
> By
if(comments_open() && !post_password_required()){
comments_popup_link('0','1','%','comments');
}
?>
the_content_rss('', TRUE, '', 50);
?>
the_category(" | "); ?>
}
}else{
?>
There is no posts !
} ?>
ليست هناك تعليقات:
إرسال تعليق