المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : آلية المتغيرات الجديدة في الجيل الرابع للفبيولتن vBulletin4


MIDO-EGYPT
2009-11-24, 04:57 PM
آلية المتغيرات الجديدة في الجيل الرابع للفبيولتن vBulletin4

السلام عليكم ورحمة الله وبركاته ،

بعد الإطلاع على قوالب الفيبلوتن الجديدة ، تغيرت تغير قد يصل الى التغير الجذري ، ربما يكون اسهل ولكن هو اعقد ويحتاج كتابة كبيرة ، في هذا الموضوع سأحاول ان استخلص التغيرات الحاصلة (في القوالب) فقط ، من جمل شرطية وعرض للمتغيرات والعبارات والخ من ذلك ،


الكل يعلم ان النسخه ستصدر في مستواها التطويري (بيتا) للجميع وليس لفريق المطورين خلال هذه الايام ومدة اقصاها هو تاريخ 15 من شهر نوفمبر


اولاً : بشكـل عام/

لم يعد هنالك متغيرات نقوم بوضعها في القوالب بعد اليوم فقط للجمل الشرطيه فقط ، اي انه تم تغير طريقة كتابة المتغير في القالب بطريقة اعتبرها معقدة بعض الشيء ، تحتاج لتسجيل المتغيرات والخ من ذلك في ملفات البي اتش بي ومن ثم تعرضها في القوالب بطريقة كتابة معينة . ما سأتحدث عنه الآن هو المتغيرات الأساسيه للفيبولتن من / خيارات المنتدى / عرض العبارات من اللغة / وشرح للجملة الشرطية الجديدة وأليه عملها وما هي الإضافات التي اضيفت عليها .

خيارات المنتدى :-

في السابق عندما نريد عرض قيمة لمتغير من خيارات المنتدى فكنا نكتب المتغير بالطريقة التالية :-

$vboptions[myvarname]


مع مراعاة تغير اسم المتغير "myvarname" لما نريد عرضه ولكن الآن تغير الوضع بشكل كامل واصبح كـ التالي :-

{vb:raw vboptions.myvarname}


وبهذه الطريقة ستُعرض قيمة المتغير بدون أية مشاكل

عبارات المنتدى (الغات) :-

هنالك طريقتين في السابق وهي لعرض العبارة التي ﻻ تحوي على متغير (نص عباره فقط) و طريقة عرض عبارة تحوي على متغيرات. واسردهم بالترتيب


1- بدون وجود متغير في العبارة
كانت طريقة الكتابة سابقاُ للمتغير بهذه الطريقة

<phrase>$vbphrase[myphrasename]</phrase>

ولكن الطريقة الجديدة كـ التالي :-

{vb:rawphrase myphrasename}

مع العلم بأن myphrasename هو اسم متغير العبارة المضافة

2- مع وجود المتغير في العبارة.
نفس الطريقة مع اضافة فاصلة وعرض للمتغير كما ذكرناه سابقه (قيمة المتغير في اللغة من المتغير الاساسي بطريقتة الجديدة)

سابقاً :-

<phrase 1="$vboptions[myvarname]">$vbphrase[myphrasename]</phrase>

ولكن في النسخه الجديدة كـ التالي :-

{vb:rawphrase myphrasename, {vb:raw vboptions.myvarname}}

الجمل الشرطية :-


تغيرت الجمل الشرطية بشكل كبير مع اضافة تحسينات كثيرة جداً ، ومميزة من اضافة قابلية لقراءة فنكشانت كثيرة على عكس السابق ،،.

اولا سابين الدوال المسموحه في جملة الشرط :-


في الجيل السابق :-

in_array
is_array
is_numeric
isset
empty
defined
array
can_moderate
can_moderate_calendar
exec_switch_bg
is_browser
is_member_of

في الجيل الجديد (الرابع). (الجديد باللون الأحمر ).
in_array
is_array
is_numeric
isset
empty
defined
array
gmdate
mktime
gmmktime
can_moderate
can_moderate_calendar
exec_switch_bg
is_browser
is_member_of
is_came_from_search_engine
vbdate



ثانياً : طريقة الكتابة للجمل بين الجيل القديم والجديد :-
كانت الطريقة السابقة لكتابة الجمل الشرطية كـ التالي وبشكل ابسط بكل حق

<if condition="$myvar">
my result
</if>

وفي الجيل الرابع كـ التالي :-

<vb:if condition="$myvar">
my result
</vb:if>

مع استخدام else كـ التالي :-

الجيد السابق :-

<if condition="$myvar">
my result
<else />
else result
</if>

والجيل الرابع :-

<vb:if condition="$myvar">
my result
<vb:else />
else result
</vb:if>
وبما يخص جملة الشرط مع else لم تكن متواجدة سابقاً ، وكانت تكتب بتداخل شرطين في شرط واحد مع وجود else في الشرط الاول وتظمين الشرط الثاني في else اي انها طريقة طويله ولكن في الجيل الجديد تم اضافة elseif لحل هذا النقص وتُكتب كـ الشكل التالي :-

<vb:if condition="$myvar">
my result
<vb:elseif condition="$myelsevar">
else result
</vb:if>

وهذا الحال مع باقي المتغيرات مع تعريفا مسبقاً في ملفات php الخاص بمنتجاتنا .

وما نستخلصه بالأصح هو كـ التالي :



المتغيرات العادية تكون كـ ذلك :-
$myvarname => {vb:raw myvarname}

المتغير على شكل مصفوفة array
$myarray[mydata] => {vb:raw myarray.mydata}

مع ملاحظة ان هنالك خطاطيف للقوالب والخ من ذلك :)

في وقت لاحق ، سأشرح ان شاء الله آليه ضبط وتعريف المتغيرات ، مع ابراز الآليه الجديدة لذلك ، في ملفات الـ php وما هي آليه عرض القوالب + تسجيلها في كاش القوالب الخاص بالفيبي

يُسمح بنقل الموضوع بشرط ذكر المصدر"آلية المتغيرات الجديدة في الجيل الرابع للفبيولتن vBulletin4 - منابر المتميز نت (http://www.almotmaiz.net/vb/28754-%D8%A2%D9%84%D9%8A%D8%A9-%D8%A7%D9%84%D9%85%D8%AA%D8%BA%D9%8A%D8%B1%D8%A7%D 8%AA-%D8%A7%D9%84%D8%AC%D8%AF%D9%8A%D8%AF%D8%A9-%D9%81%D9%8A-%D8%A7%D9%84%D8%AC%D9%8A%D9%84-%D8%A7%D9%84%D8%B1%D8%A7%D8%A8%D8%B9-%D9%84%D9%84%D9%81%D8%A8%D9%8A%D9%88%D9%84%D8%AA%D 9%86-vbulletin4/)" ، اخذت اكثر من 3 ساعات وانا اعد له ، واذا كنت من مستخدمين تويتر ، برجاء اضغط هنا لتحديث حالتك ومحاولة نشر المعلومة قدر المستطاع. (http://twitter.com/home?status=%D8%A2%D9%84%D9%8A%D8%A9+%D8%A7%D9%84% D9%85%D8%AA%D8%BA%D9%8A%D8%B1%D8%A7%D8%AA+%D8%A7%D 9%84%D8%AC%D8%AF%D9%8A%D8%AF%D8%A9+%D9%81%D9%8A+%D 8%A7%D9%84%D8%AC%D9%8A%D9%84+%D8%A7%D9%84%D8%B1%D8 %A7%D8%A8%D8%B9+%D9%84%D9%84%D9%81%D8%A8%D9%8A%D9% 88%D9%84%D8%AA%D9%86+vBulletin4%20http%3A%2F%2Fbit .ly%2FvBulletin4vars%20%28via%20@alz3abi%29)

والسلام عليكم ورحمة الله وبركاته .