التحكم في تفعيل أو تعطيل الإضافات بحسب فئة الصفحات لمدونة بلوجر

Control-the-activation-or-deactivation-of-plugins-by-Blogger-Page-Category
نتكلم اليوم عن موضوع مهم لمستخدمين مدونة بلوجر, سنتناول اكواد مهم في بلوجر وهي اكواد التحكم في مكان ظهور الإضافات, فالعديد منا يحاول ينسق المدونة وفي بعض الأحيان نرغب في ظهور الإضافة بنوع معين من الصفحات فنرغب على سبيل المثال ظهور الإضافة في صفحة الموضوع فقط بينما لا نرغب بظهورها في الصفحات الأخرى, وعلى هذه المثال نستطيع التحكم باستخدام هذه الاكواد في تشغيل الإضافة في مكان معي في المدونة.

تحتوي مدونات بلوجر على العديد من الفئات ومنها فئات تم إضافاتها حديثا, كذالك تم تحديث اكواد التحكم في بلوجر وأصبح لدينا اكواد للإصدار القديم واكواد للإصدار الجديد, لذالك يجب أن تعرف مدونتك في أي إصدار أو انك تقوم بتجربة الاكواد للإصدارات الحديث في حالت لم تشتغل استخدام الاكواد للإصدارات القديمة.

أين يمكنني استخدام اكواد التحكم:

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

شرح اكواد التحكم في تشغيل أو إيقاف تشغيل على حسب فئات الصفحة

1- التشغيل في الصفحة الرئيسية

كود اصدار جديد من بلوجر
<b:if cond='data:view.isHomepage'> … </b:if>
كود اصدار قديم من بلوجر
<b:if cond='data:blog.url == data:blog.homepageUrl'> … </b:if>


2- التشغيل في صفحات الفهرس: وهي الصفحات التي يتنقل منها لمعاينة أجزاء من مواضيع المدونة الذي تم نشرها

كود اصدار جديد من بلوجر
<b:if cond='data:view.isMultipleItems'> … </b:if>
كود اصدار قديم من بلوجر
<b:if cond='data:blog.pageType == "index"'> … </b:if>

3-التشغيل في الصفحات وفي داخل الموضوع للمدونة

كود اصدار جديد من بلوجر
<b:if cond='data:view.isSingleItem'> … </b:if>
كود اصدار قديم من بلوجر
<b:if cond='data:blog.pageType in ["item", "static_page"]'> … </b:if>

4-التشغيل داخل المواضيع فقط

كود اصدار جديد من بلوجر
<b:if cond='data:view.isPost'> … </b:if>
كود اصدار قديم من بلوجر
<b:if cond='data:blog.pageType == "item"'> … </b:if>

5- التشغيل في الصفحات فقط

كود اصدار جديد من بلوجر
<b:if cond='data:view.isPage'> … </b:if>
كود اصدار قديم من بلوجر
<b:if cond='data:blog.pageType == "static_page"'> … </b:if>

6-التشغيل في التسميات عند معاينة التسميات ومواضيعها

كود اصدار جديد من بلوجر
<b:if cond='data:view.isLabelSearch'> … </b:if>
كود اصدار قديم من بلوجر
<b:if cond='data:blog.searchLabel'> … </b:if>

7-التشغيل في صفحة الارشيف

كود اصدار جديد من بلوجر
<b:if cond='data:view.isArchive'> … </b:if>
كود اصدار قديم من بلوجر
<b:if cond='data:blog.pageType == "archive"'> … </b:if>

8-التشغيل في صفحة البحث

كود اصدار جديد من بلوجر
<b:if cond='data:view.isSearch'> … </b:if>
كود اصدار قديم من بلوجر
<b:if cond='data:blog.searchQuery'> … </b:if>

9-التشغيل في صفحة الخطا 404

كود اصدار جديد من بلوجر
<b:if cond='data:view.isError'> … </b:if>
كود اصدار قديم من بلوجر
<b:if cond='data:blog.pageType == "error_page"'> … </b:if>

10- التشغيل في صفحة المعاينة

كود اصدار جديد من بلوجر
<b:if cond='data:view.isPreview'> … </b:if>
كود اصدار قديم لايوجد

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

عكس الأمر من التشغيل في إلى إيقاف تشغيل في

لعكس الأمر يوجد طريقتان لكل إصدار طريقة 
في الإصدار القديم يجب أن تقوم بعمل تغيير بسيط جداً في الاكواد ,لو تلاحظ في جميع الاكواد على الإصدار القديم وجود على == لذالك عندما يكون هكذا (==) بهذا يعني شغلي في هذه الفئة بينما إذا جعلتها على هده الشكل (=!) "ملاحظ علامة التعجب قبل علامة التساوي" سيكون الأمر شغلها في جميع الفئات ماعدا هذه الفئة, انظر الى المثال:
الكود التالي يعني شغلّي الاضافة في هذه الفئة فقط
<b:if cond='data:blog.url == data:blog.homepageUrl'> … </b:if>
الكود يعني شغلّي هده الاضافة في جميع الفئات ماعدا هذه الفئة
<b:if cond='data:blog.url != data:blog.homepageUrl'> … </b:if>

كذالك في الشرط المزدوج في اكواد الإصدار القديم لا يوجد به إشارة (==) حتى تغيرها ولكن لو تلاحظ ستجد وجود in في كود الشرط وهي تعني شغلي في هذه الفئة لعكس الأمر في هده الاكواد قم بجعلها not in وسينعكس الأمر ليعني شغلي في جميع الفئات ماعدا هذه الفئة, انظر إلى المثال.
الكود التاني يعني شغلّي الاضافة في هذه الفئة فقط
<b:if cond='data:blog.pageType in ["item", "static_page"]'> … </b:if>
الكود يعني شغل لي هده الاضافة في جميع الفئات ماعدا هذه الفئة
<b:if cond='data:blog.pageType not in ["item", "static_page"]'> … </b:if>

اكواد الاصدارات الجديدة:

في الإصدار الجديد يوجد طريقتين لتحكم بهم  وهما وضع كلمة not قبل الشرط او وضع ! قبل الشرط, أنظر إلى المثال
كود يعني شغلي في هذه الفئة فقط
<b:if cond='data:view.isHomepage'> … </b:if>
كود يعني لا تشغلي في هذه الفئة وشغل لي في الفئات الاخر
<b:if cond='not data:view.isHomepage'> … </b:if>
كود يعني لا تشغلي في هذه الفئة وشغل لي في الفئات الاخر
<b:if cond='!data:view.isHomepage'> … </b:if>

كيف يمكننا ان نستفيد من <b:else/>

<b:else/> تمكنك من استخدام شرط إيقاف وتشغيل في نفس الوقت, حيث يتم وضع كود <b:else/> في وسط كود الشرط "نستبدل بـ ..."فيصبح فوق كلمة <b:else/> يعني شغلي في هذه الفئة فقط وأسفل كلمة <b:else/> تشغل في جميع الفئات ماعدا هذه الفئة, انظر إلى المثال لتوضح الفكرة أكثر:
<b:if cond='data:view.isHomepage'> 


   <!--هنا الشرط شغلي في هذه الفئة فقط-->

<b:else/>

  <!--هنا عكس الشرط لا تشغل لي في هده الفئية-->

</b:if>

كيف يمكنني دمج أكثر من فئة في شرط واحد:

أولى يجب أن تعرف الفئات وهي باختصار:
item  فئة صفحة المواضيع
static_page فئة الصفحات الثابتة
index   صفحات الفهرسة كالتنقل بين المواضيع
archive الأرشيف
error_page فءة صفحة الخطاء

يوجد طريقة جميلة تم تحديثها في الإصدارات الجديدة لقوالب مدونات بلوجر وهي عن طريق استخدام الكود التالي:
<b:if cond='data:blog.pageType in {" #1","#2"}'>
حيث في #1 يتم استبدلها بفئة معينة وكذالك في #2 يتم استبدالها بفئة أخرى, وبذالك الشرط أصبح شغل لي في هذه الفئتين وكذالك يمكنك عكس الأمر بتغيير in الى  .not in

ماذا لو أردنا إضافة ثلاث فئات أو أكثر؟

الامر بسيط باستخدام نفس الكود السابق ولكن بتغيير بسيط وهي اضافة فاصلة تم خانة مربعين تنصيص (" "), المثال سوف يوضح الامر:
<b:if cond='data:blog.pageType in {" #1","#2","#3","#4"}'>
#1 يمكننا وضع فئة معينة
#2 يمكننا وضع فئة معينة أخرى
#3 يمكننا وضع فئة معينة أخرى
#4 يمكننا وضع فئة معينة أخرى
هده شرط شغلّي في هده الأربع الفئات يكنك زيادتهم أو إنقاصهم كم تحب تستخدمها وكذالك يمكنك عكس الكود إلى لا تشغلّي عن طريق وضع not.

ملاحظة هامة: يجب أن  تضع الفئات المطلوبة دون ترك فئة مجهولة, يجب ان لا يحتوي على فئاتفارغة  وإلا لن يعمل انظر إلى المثال لتوضيح:
مثال كود خطاء
 <b:if cond='data:blog.pageType in {"item","static_page","index","#4"}'>
مثال لكود الصحيح
<b:if cond='data:blog.pageType in {"item","static_page","index"}'>


نكون هنا قد سردنا في هذه الموضوع بيانات بلوجر لتحكم في تشغيل وإيقاف تشغيل الإضافات, في حالت حدتث معك مشكلة او عدم فهم جزء معين الدرس يمكنك وضعها في التعليقات وسنرد عليك في اقرب وقت.




هناك تعليق واحد:

  1. مرحباً،

    أود أن أشكركم على المقالة الرائعة التي قدمتموها. كانت مفيدة للغاية وأضفت لي الكثير من المعلومات القيمة. أقدر مجهودكم الكبير في تقديم هذا المحتوى المتميز.

    تحياتي لكم،
    Soft Mohtarif

    ردحذف

نموذج الاتصال

الاسم

بريد إلكتروني *

رسالة *