أمثلة وتطبيقات على المتغيرات والدوال + شرح وضع القالب تلقائياً







درسنا لهذا اليوم من الدروس المفضلة عند الجميع
بعد هذا بإذن الله ستقوم ببرمجة كل هاك ترغب ببرمجته
مع ملاحظة أن قوة وكبر الهاك يعتمد على معرفتك بالـ PHP
وسأقوم بعرض بعض الأمثلة التطبيقية التي تراها في بعض الهاكات أو على الأقل أغلبها
وأيضاً سأقوم بعرض طريقة وضع متغير القالب في أي قالب تريده بشكل تلقائي
أي عند تركيب الهاك لا حاجة لتعديل القوالب

----------------------------------------

مثال على أول كود نكتبه ليفهم الجميع :


----------------------------------------

الكود التالي يقوم بالتأكد إن تم تفعيل الهاك من خيارات الهاك أم لا
وعند التفعيل سيتم تنفيذ أكواد الهاك
مع استبدال XXX بإسم الخيار الخاص بتفعيل الهاك :

رمز PHP:
if ($vbulletin->options['XXX'])
{
هنا أكواد PHP الخاصة بالهاك

الكواد التالي يقوم بالتأكد إذا كان عدد المشاركات الموجود في الخيار XXX في لوحة التحكم
هو أقل من عدد مشاركات العضو .. وإن كان أقل سيتم إظهار رسالة عدم وجود صلاحيات :

رمز PHP:
if ($vbulletin->userinfo['posts'] < $vbulletin->options['XXX'])
{
print_no_permission();

الكود التالي يقوم بالتأكد إذا كان العضو هو صاحب الموضوع أم لا :

رمز PHP:
if ($threadinfo['postusername'] == $vbulletin->userinfo['username'])
{
هنا أكواد PHP الخاصة بالهاك

الكود التالي يقوم بالتأكد أن العضو من المجموعات المحددة :

رمز PHP:
if (is_member_of($vbulletin->userinfo, array('2','3','4')))
{
هنا أكواد PHP الخاصة بالهاك


الكود التالي يقوم بالتأكد أن القسم هو المطلوب :

رمز PHP:
if ($foruminfo['forumid'] == 1)
{
هنا أكواد PHP الخاصة بالهاك

----------------------------------------

لاتنسى مراعاة الهوك الخاص بالبلقن
ذكرت في الدرس الثالث بعض الهوكات واستخداماتها

----------------------------------------

الآن سننتقل إلى الجزء المفضل عند الجميع
طريقة وضع القالب تلقائياً دون أي تدخل من صاحب المنتدى
أي دون وضع أي متغيرات في أي قالب بشكل يدوي

أولاً بعد إَضافة القالب ضع الكود التالي في بداية البلقن ( قبل كود الاستبدال الذي سنراه بعد قليل ) :

رمز PHP:
eval('$XXX = "' fetch_template('XXX') . '";'); 

مع إستبدال XXX بإسم القالب

أما الكود التالي فيأتي بعد الكود السابق وهو للإستبدال التلقائي للقالب :

رمز PHP:
$vbulletin->templatecache['XX'] = str_replace('QQ','QQ NN',$vbulletin->templatecache['XX']); 

مع إستبدال XX بإسم القالب الذي تريد وضع الهاك فيه مثل FORUMHOME للصفحة الرئيسية
وإستبدال QQ بكود موجود في نفس القالب وتريد وضع الهاك أسفله أو فوقه
وإستبدال NN بالمتغير الخاص بإسم القالب مثل
$XXX

أي مثلاً أريد وضع القالب RAMZY في الصفحة الرئيسية أسفل الهيدر .. سيكون الكود كالتالي :

رمز PHP:
$vbulletin->templatecache['header'] = str_replace('$_phpinclude_output','$_phpinclude_ou tput $RAMZY',$vbulletin->templatecache['header']); 

أو الكود التالي سيفي بالغرض وهو أفضل من الكود السابق في هذه الحالة :

رمز PHP:
$vbulletin->templatecache['header'].= '$RAMZY'

لكن تريث قليلاً .. بعض الهاكات لا تحتاج إلى قوالب .. لذا تضع المطلوب في متغير ومن ثم تستبدل .. مثال :

رمز PHP:
$ramzy $vbulletin->opions['XX_news'];
$vbulletin->templatecache['header'].= '$ramzy'

وكما ذكرت سابقاً هذا يعتمد على حسب معرفتك بالـ PHP

----------------------------------------

وهذا مثال سريع على الإستبدال التلقائي مع بعض الإضافات :


----------------------------------------

المطلوب منكم

تعديل البلقن في البرودكت السابق وجعله خاص بمنع العضو من الملف الشخصي إن لم تكن لديه 5 مشاركات
طبعا مع إضافة الكود الخاص بتفعيل الهاك وجعله يمنع العضو بشكل كامل وإن وضع "نعم" على خيار "منع العضو" يتم منعه اذا لم تكن لديه أكثر من 5 مشاركات

مساعدة : استخدم الكود التالي مع استخدام العبارات الشرطية :

رمز PHP:
standard_error('هنا ضع الجملة المطلوبة'); 

ومن ثم تصدير المنتج ووضعه في المرفقات

ملاحظة مهمة جداً :
نسبة الأكواد الموجودة في هذا الدرس لا تتعدى الـ 5% من نسبة جميع الأكواد
لذا قم بإستعراض الهاكات وتعلم منها المزيد
فأنا لم اتعلم إلا منها ومن كثرة التجربة

بإنتظاركم

 

رابط الدرس

http://www.traidnt.net/vb/showthread.php?t=486555