منتدى استراحات زايد

منتدى استراحات زايد (http://vb.ma7room.com/index.php)
-   منتدى أخبار المواقع والمنتديات العربية والأجنبية (http://vb.ma7room.com/forumdisplay.php?f=183)
-   -   [قالب اجنبي ] شرح تصميم قوالب ووردبريس -الجزء السادس- (http://vb.ma7room.com/showthread.php?t=1312541)

محروم.كوم 09-07-2013 07:50 PM

[قالب اجنبي ] شرح تصميم قوالب ووردبريس -الجزء السادس-
 
<div>
<font size="5">http://4.bp.blogspot.com/-IdSVPyaEEW...velopment6.jpg

المصدر: شرح تصميم قوالب ووردبريس -الجزء السادس- - مدونة المبرمج


فى الدرس السابق، تعرفنا على كيفية برمجة أنواع للتدوينات، أما فى هذا الدرس -بإذن الله- سنتعرف على كيفية برمجة القائمة الجانبية SideBar، سنتعرف على كيفية تسجيلها فى لوحة تحكم الووردبريس، ومن ثم كيفية عرضها وعرض بعض القوائم الإفتراضية إن لم يكن تم إضافة آية قوائم فى هذا السايدبار من المستخدم.
أولاً: لتسجيل السايدبار فى لوحة تحكم الووردبريس؛ كي يستطيع المستخدم بإضافة بعض القوائم Widgets بها، يجب أن تقوم بتسجيل هذا السايدبار حتى يتسنى للمستخدم أن يضيف إليها بعض القوائم.
ثانيًا: قبل تسجيل السايدبار، يجب أن نقوم بخطوة أخرى، نحن نعلم أننا قد قمنا بإستخدام دالة get_sidebar فى ملف index.php من قبل لكي يتم إضافة السايدبار، وتلك الدالة تلقائيًا تقوم بتحميل ملف sidebar.php، لذلك سنقوم بعمل ملف جديد يدعى sidebar.php بجوار ملف index.php.
فى ملف sidebar.php سأقوم بإضافة كود الـHTML الخاص بعرض السايدبار، وهو كالكود التالي: رمز PHP:


Title
Content




لاحظ أن: كل قائمة جديدة فى السايدبار تبدأ بالديف الذي يحتوى على الكلاس block-post (وهو الكود الذي سيتم تكراره مع كل قائمة جديدة يتم إضافتها فى السايدبار).
ثالثًا: لتسجيل السايدبار، يجب أن نقوم بفتح ملف functions.php، ثم نبدأ بالعمل !
سنقوم أولاً بعمل جملة شرطية للتحقق من إذا كانت توجد دالة فى نسخة الووردبريس التي نعمل عليها تدعى register_sidebar، فقط يستخدم أى مستخدم القالب على إصدار قديم لووردبريس ، ولذلك سنقوم بهذا التحقق، وإن كانت تلك الجملة الشرطية ترجع TRUE، فسيتم تسجيل السايدبار، الآن جملة التحقق ستكون هكذا: رمز PHP:
// Register Sidebar
if(function_exists('register_sidebar')){

}


لتسجيل السايدبار الواحد سنحتاج إلى تسجيل 7 معلومات، كل معلومة منهم لها اسم محدد، وتلك هي قائمة تلك الاسماء وشرحها:
1- ID، وهو الاسم الكودي للسايدبار الذي سوف نستخدمه لاحقًا فى أماكن أخرى من الكود.
2- NAME، وهو اسم السايدبار الذي سيتم عرضه للمستخدم فى لوحة تحكم الووردبريس.
3- DESCRIPTION، وهو وصف السايدبار الذي سيتم عرضه للمستخدم فى لوحة تحكم الووردبريس.
4- Before-widget، وهو الكود المُراد وضعه قبل بداية أى قائمة Widget جديدة يتم إضافتها إلى السايدبار.
5- After-widget، وهو الكود المُراد وضعه بعد نهاية أى قائمة جديدة يتم إضافتها إلى السايدبار.
6- Before-title، وهو الكود المُراد وضعه قبل عنوان أى قائمة جديدة.
7- After-title، وهو الكود المُراد وضعه بعد نهاية عنوان أى قائمة جديدة.
جميع تلك البيانات السابقة تخزن على شكل بارامتر (عبارة عن مصفوفة) لدالة register_sidebar، حيث أن كل اسم من الأسماء السابقة يكون عبارة عن Key فى المصفوفة ويتم إضافة القيمة التي نريدها لها.
نلاخظ أننا فى كود الـHTML الذي تم وضعه فى بداية الدرس أننا قبل أى قائمة جديدة نقوم بكتابة السطر التالي:
رمز PHP:



وبعد نهاية كل قائمة جديدة نقوم بإضافة السطر التالي:
رمز PHP:



وأيضًا قبل أى عنوان قائمة نقوم بإضافة السطر التالي:
رمز PHP:



وبعد كل أى عنوان نقوم بإضافة السطر التالي:
رمز PHP:



وتلك هي النقاط الأربع الأخيرة فى المعلومات التي نريد تخزينها فى المصفوفة، ولذلك سيصبح كود تسجيل السايدبار كالتالي: رمز PHP:
if(function_exists('register_sidebar')){
register_sidebar(array(
"id"=> "main-sidebar",
"name"=> "Main Sidebar",
"description"=> "The Main Sidebar in the right",
"before-widget" => "",
"after-widget" => "

"
.
"before-title" => "",
"after-title" => "


"
));
}





والآن قمنا بتسجيل السايدبار بنجاح !
رابعًا: سنقوم بالدخول إلى ملف sidebar.php، وحذف الكود الذي سيتم تكراره مع كل قائمة جديدة، ليصبح الملف يحتوى على هذا الكود فقط: رمز PHP:





والآن سنقوم بعمل جملة شرطية، للتحقق من إن لا يوجد دالة dynamic_sidebar، وهي الدالة المسئولة عن عرض القوائم فى السايدبار أو ألا يكون بإستطاعة دالة dynamic_sidebar عرض السايدبار المسمي بـmain-sidebar (لاحظ أننا استخدمنا الاسم الكودي للسايدبار)، ففى تلك الحالة لن تكون هنالك آية قوائم فى السايدبار ولذلك سيتم عرض رسالة تقول بأنه لا يوجد آية قوائم حتى الآن تم إضافتها من المدير، كما بالكود التالي:<div style="margin:20px; margin-top:5px"> رمز PHP:
<div class="alt2"> <div dir="ltr" style="text-align:left;"> <span style="color: #000000">if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('main-sidebar')){
?>
There is no Widgets Yet !
<span style="color: #0000BB">


الساعة الآن 03:41 AM

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.5.2 TranZ By Almuhajir


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227