أخر الاخبار

أساسيات تصميم وتكويد قوالب بلوجر 2022

أساسيات تصميم وتكويد قوالب بلوجر 2022 

تصميم قالب بلوجر من الصفر ليس بالأمر الصعب الذي تتخيله. فمن السهل جِدًّا أن تبني قالب بلوجر من البداية بسهولة إذا تعلمت الأساسيات التي تستخدمها في بناء هذا القالب. لتقوم بتسهيل عملية بناء القالب وتكويده يمكنك أن تتعلم أساسيات لغات البرمجة التي ستستخدمها في بناء القالب (مثل: HTML و CSS و JavaScript) وفهم بعض أساسيات لغة XML. يمكنك تعلم هذه اللغات بشكل مجاني عن طريق موقع https://www.w3schools.com 

كيف يعمل بلوجر؟

عند إرسال قالب XHTML إلى المدونة، يتم تخزين هذا القالب في قاعدة بيانات المدونة. عند طلب المدونة عبر المتصفح، يوزع محلل بلوجر (Blogger Parser) الرمز ويعيد إخراج HTML من كود XML الذي تم تحليله والذي سيُعرض في المتصفح.



مربع نص: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'> <head> <title><data:blog.pageTitle/></title> </head> <body> <!-- BODY CONTENTS --> </body> </html>

النسق الأساسي للقالب

يتم تكويد قالب بلوجر بلغة XHTML بالكامل وعناصر بلوجر (Blogger Elements). في الكود السابق، قمنا بتحديد مجموعة من xmlns XML (Namespace) التي تم تعريفها بواسطة Google للاستخدام مع منصة بلوجر. Namespace مثل (xmlns:b, xmlns:expr, xmlns:data) تتيح لنا تصميم قالب بلوجر والحصول على البيانات من قاعدة بيانات بلوجر.

 

·     مستطيل: زوايا مستديرة: xmlns:data- مصدر بيانات بلوجر

·     مستطيل: زوايا مستديرة: xmlns:b                      - يتيح الوصول إلى عناصر بلوجر

·     مستطيل: زوايا مستديرة: xmlns:expr                   - يستخدم لحساب التعبير عن

السمات

ملحوظة: مجالات الأسماء السابقة مجرد اختصارات ويمكنك تغيير مجالات الأسماء السابقة من "b" إلى "blog" و"data" إلى "d". ولكن من الأفضل إبقاء الأسماء كما هي.

 

نصائح قبل البدء في تصميم قالب بلوجر

قبل البدء في تصميم القالب، قم بتخطيط سريع شكل القالب الذي تريد تصميمه. سيُساعدك هذا أثناء تصميم القالب وتكويده. يمكنك رسم التخطيط على قطعة من الورق، أو استخدام تطبيقات للتخطيط مثل wire-frame. قم بتحديد عناصر الموقع مثل:

·     كيف ستظهر المنشورات

·     أين سيكون مكان القائمة وكيف سيكون شكلها

·     أين سيكون مكان الإضافات

·     عدد أعمدة القالب

 

الأقسام - Sections

يتم تصميم تخطيط قوالب بلوجر بالأقسام Sections. الأقسام عبارة عن تخطيط الصفحة (مثل: Header، Sidebar، Footer، ...إلخ). وتعتبر هي نفس فكرة الأقسام في HTML5.

القسم هو جزء من الموقع تقوم بتخصيص محتوى معين في هذا القسم.



مربع نص: <b:section id='' class='' maxwidgets='' showaddelement=''> </b:section>

تركيب الأقسام (Section Syntax)

يظهر في هذا الكود بنية إنشاء قسم (Section) في قوالب بلوجر. يمكن أن تضع كود HTML حول كود القسم (Section)، ولكن لا يمكن أن يكون هناك كود HTML داخل كود القسم (Section). لتقوم بتحديد محتويات القسم (Section) يجب استخدام عناصر واجهة منصة بلوجر.

كل وسم من وسوم القسم (Section) يتم كتابته بالشكل الموضح في أعلى هذه الفقرة.

كل سمة من سمات الأقسام لها معنى خاص، يتم تحليلها بواسطة Blogger لعرض العناصر النهائية.

سمات الأقسام (Section Attributes)

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

·     Id (مطلوب) – هذه الخاصية تعطي اسما فريد للقسم، تستخدم بها حروف وأرقام فقط.

·     class (اختياري) – هذه الخاصية تعطي اسم شائع للفئات مثل: "العنوان"، شريط التنقل، الشريط الجانبي، ...إلخ. إذا قررت أن تقوم بتبديل القالب لاحقًا، فإن هذه الأسماء تساعد Blogger على تحديد أفضل الطرق لنقل المحتوى الخاص بك. ويمكنك استخدام أسماء مختلفة. ليس من الشرط أن تعطي هذه الخاصية اسم فريد، فمن الممكن استخدام الاسم لأكثر من عنصر.

·     showaddelement (اختياري) – تأخذ هذه الخاصية قيمة "yes" أو "no"، القيمة الافتراضية تكون "yes". تجعل هذه الخاصية إمكانية إضافة أداة جديدة للقسم، ويظهر خيار "إضافة أداة" في صفحة التخطيط داخل منصة Blogger.

·     maxwidgets (اختياري) – تقوم هذه الخاصية بتحديد الحد الأقصى لعدد الأدوات في القسم. إذا لم تحدد العدد، فلن يكون هناك حد لعدد الأدوات.

لا يمكن أن يحتوي قسم الأدوات على أقسام أخرى أو أكواد أخرى بداخله. إذا كانت هناك ضرورة لإضافة رمز حول أو داخل قسم، فيجب تقسم القسم إلى قسمين مختلفين.



مربع نص: <b:section id='header' class='header' maxwidgets="1" showaddelement="no"> <!-- Section contents --> </b:section> <b:section id='main' class='main' maxwidgets="1" showaddelement="no"> <!-- Section contents --> </b:section> <b:section id='footer' class='footer' showaddelement="no"> <!-- Section contents --> </b:section>

مثال:

ملحوظة: يجب أن يكون هناك على الأقل قسمين في القالب أو اثنين من سمة "b:section"، وإلا فإن منصة بلوجر ستعتبره خَطًّا.

 

الأدوات - Widgets

يتم صنع الأقسام خصيصًا باستخدام الأدوات (Widgets). هذه الأقسام عبارة عن عناصر للتخطيط، والأداة (Widget) هي التي يتم بها عرض البيانات الحقيقية. بواجهة تصميم بأبسط شكل، هو وسم واحد فقط، وهو عنصر نائ  ب أو ما يُسمي بـ Placeholder لما يجب أن يتم إظهاره في عناصر الصفحة. يوجد بعض الأدوات الافتراضية في Blogger تمكنك أيضًا من إنشاء أدوات مخصصة. يتم تخزين البيانات الخاصة بالعنصر لواجهة المستخدم في قاعدة بيانات Blogger ولا يمكن الوصول إليه إلا عندما يتم عرض عنصر UI (واجهة المستخدم).



مربع نص: <b:widget id='' locked='' mobile='' title='' pageType='' type='' />

تركيب الأدوات – Widget Syntax

·     id (مطلوب) – يجب أن يحتوي على أحرف وأرقام فقط، ولا يمكن أن يحتوي على رموز، ولا يمكن أن يبدأ برقم وإلا سيحدث خطأ. يجب أن يكون قيمة الـ id اسم فريدًا ولا يمكن أن يتشابه مع عنصر آخر.

·     type (مطلوب) – تشير هذه الخاصية إلى نوع عنصر الأداة، ويجب أن تأخذ هذه الخاصية نوع أو قيمة صحيحة من عناصر الأدوات:

 

Blog

BlogArchive

BlogProfile

Feed

HTML

Header

LinkList

List

Logo

Navbar

NewsBar

SingleImage

VideoBar

·     locked (اختياري) – تأخذ هذه الخاصية قيمة "yes" أو قيمة "no"، والقيمة الافتراضية لها هي "no". وظيفة هذه الخاصية فقل الأدوات بحيث لا يمكن تحريكها أو حذفها من صفحة تنسيق منصة بلوجر.

·     pageType (اختياري) – تأخذ هذه الخاصية قيم: ("all"، "main"، "item"، "achive")، والقيمة الافتراضية لهذه الخاصية تكون "all". وظيفة هذه الخاصية هي عرض عنصر الأداة على الصفحات المخصصة لموقعك فقط (يتم عرض جميع عناصر UI في صفحة التنسيق داخل منصة بلوجر).

·     title (اختياري) – تقوم هذه الخاصية بتحديد العنوان الخاص بعنصر الأداة التي سيتم عرضها. إذا لم تقم بتحديد العنوان، فسيتم استخدام عنوان افتراضي لعنصر الأداة مثل "List1".

·     mobile (اختياري) – تأخذ هذه الخاصية قيم: ("yes"، "no"، "only”) ، والقيمة الافتراضية هي "default". وظيفة هذه الخاصية تحديد ما إذا كان سيتم عرض الأداة على الهاتف أم لا. لن يتم عرض عناصر: ("PageList"، "Header"، "Adsense"، "Profile"، "Blog") على الهاتف إلا إذا كانت قيمة هذه الخاصية هي "default".

مثال:



مربع نص: <b:section id="sidebar" class="sidebar" maxwidgets="" showaddelement="yes">
  <b:widget id='CustomSearch1' title='Search' type='CustomSearch' locked='false'/>
  <b:widget id='FollowByEmail1' title='Follow By Email' type='FollowByEmail' locked='false' />
  <b:widget id='PopularPosts1' locked='false' title='Popular On Relatemein' type='PopularPosts'/>
  <b:widget id='Label1' type='Label' locked='false' />
  </b:section>

قواعد إنشاء الأقسام (Sections)

·     1 – أي قسم له وسم فتح ووسم إغلاق ما عدا بعض الوسوم لا تحتوي على وسم إغلاق ويطلق عليهم (Empty Elements أو Void Elements). وسم الفتح "<b:section>" أما وسم الإغلاق "<b:section/>". إذا قمت بفحص موقع إلكتروني تم إنشائه باستخدام بلوجر من خلال خيار "inspect element" الموجود في المتصفح، ستجد أن تم استبدال وسم القسم "section" بـعنصر آخر "<div>". ولكن يظل القسم (Section) في محرر HTML الموجود في منصة بلوجر، لا يتم تغيير الأقسام إلى وسم "div".

·     2 – يجب أن يكون لكل قسم معرف "id" وفئة "class". ممنوع أن تقوم بتسمية قسمين بنفس الاسم وإلا سيعتبر بلوجر أن هذا خطأ. نظرًا لأن الأقسام يتم تحويلها إلى "div"، إلا أن الفئات "class" والمعرفات "id" تبقى كـسمات حتى بعد تحويل القسم إلى "div". وذلك حتى تتمكن من تخصيص القسم حسب المعرف والفئة.

·     3 – ممنوع تداخل الأقسام. أي أنك لا يمكنك أن تقوم بإدراج قسم داخل قسم آخر، هذا ممنوع وستعتبره منصة بلوجر خطأ.

·     4 – الأفضل أن تقوم بإنشاء قسم تحت عنصر "div".

·     5 – تستطيع إدراج سمات معينة فقط.

 

السمة

القيمة

مطلوب/اختياري

الوظيفة

 

id

 

اسم فريد يسمح فقط بالأرقام والحروف.

مثل: head, sidebar

 

مطلوب

تعريف وتخصيص القسم

class

مثل الـ id + يمكن استخدامه مع أكثر من قسم

اختياري

تعريف وتخصيص القسم

 

 

 

 

showaddelement

 

 

 

 

 

القيم المنطقية – "yes"/"no"

 

 

 

 

اختياري

إذا كانت القيمة "yes"، فسيسمح القسم بإضافة أدوات جديدة به، أما إذا كانت القيمة "no" لن يسمح القسم بإضافة أي أداة

 

maxwidgets

 

 

 

أرقام مثل: 1، 2، 8، 15

 

اختياري

أقصى عدد للأدوات التي يمكن أن يحتويها القسم

 

 

growth

 

 

رأسي أو أفقي – vertical/horizontal

 

 

 

اختياري

إذا كانت القيمة "vertical"، فسيتم ترتيب القسم جنبًا إلى جنب، والعكس صحيح

 

قواعد إنشاء الأدوات (Widgets)

·     1 – ممنوع تداخل الأدوات بداخل بعضهم البعض.

·     2 – تستطيع إدراج السمات المحددة فقط.

·     3 – يجب أن تحتوي كل أداة على معرف فريد "id" وسمة "type". ممنوع تسمية معرف أو فئة باسم معرف أو فئة آخرين. تظل معرفات الأداة كـسمات بعد تحويل الأداة إلى "div". وذلك حتى تتمكن من تخصيص الأداة فيما بعد.

·     4 – ممنوع إدراج وسوم HTML في الأدوات.

·     5 – يمكن استخدام وسم البداية والنهاية كإعلان للأداة. علامة بدء الأداة هي "<b:widget>" وعلامة نهاية الأداة هي ""<b:widget/>.

·     6 - ستضر إلى إنشاء أداة بداخل قسم إذا اردت إنشاء أداة جديدة.

 

السمات

القيمة

مطلوب/اختياري

الوظيفة

 

id

اسم فريد لا يمكن أن يتشابه مع اسم id آخر

 

مطلوب

تعريف وتخصيص القسم

 

type

AdSense, Attribution, Blog, HTML, Header, PageList, Profile

 

مطلوب

 

تحديد نوع الأداة

 

title

 

أي اسم مثل: إعلان، قائمة

 

اختياري

عرض عنوان الأداة

 

pageType

all, archive, item, main, static

 

اختياري

تحديد نوع صفحة الأداة

 

 

 

locked

 

 

 

yes/no

 

 

 

اختياري

إذا كانت القيمة "yes"، فلن تستطيع تحريك الأداة أو حذفها من واجهة منصة بلوجر

 

 

mobile

 

 

yes/no

 

 

اختياري

إذا كانت القيمة "yes"، فستستطيع عرض الأداة على الهاتف

 

بعض الاختلافات بين الأقسام (Sections) والأدوات (Widgets)

الأقسام

الأدوات

يمكن أن تضع أداة أو أكثر داخل كل قسم

لا يمكن أن تحتوي الأداة على قسم بداخلها

لا يوجد للأقسام أي خاصية أو سمة للتحكم في العرض أو الإخفاء على الهواتف

تحتوي الأدوات على سمة خاصة بالتحكم في عرض أو إخفاء الأداة على الهواتف

يمكن إضافة وسوم HTML بداخل الأقسام مباشرة

لا يمكن إضافة وسوم HTML بداخل الأداة

القسم جزء أو منطقة مستقلة بذاتها

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

لا يمكن إضافة قسم جديد من واجهة منصة بلوجر

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

لا تحتوي الأقسام على خاصية أو سمة title لعرض أو إخفاء عنوان القسم

تحتوي الأدوات على خاصية title لعرض أو إخفاء عنوان الأداة

 

بعض التشابهات بين الأقسام (Sections) والأدوات (Widgets)

الأقسام

الأدوات

يتم تغيير وسوم الأقسام بالوسم div

وسوم الأدوات يتم استبدالها بالوسم div

لا يمكن أن يحتوي القسم على قسم آخر بداخله

لا يمكن أن تحتوي الأداة على أداة أخرى بداخلها

أي قسم لديه معرف id فريد

أي أداة لديها معرف id فريد

 

تسمية فئة "class" القسم

·     1 – الاسم الأساسي للفئات "class" يكون (navbar: navigation menu, main, header: header section)

·     2 – على الرغم من أنه من الاختياري تسمية فئة "class" القسم، إلا أنه من الأفضل أن نضيفها لأن ستساعد بلوجر على تحديد كيفية نقل محتوى القالب الحالي إذا قمت بتغيير قالبك لاحقًا

 

بعض البيانات الديناميكية الافتراضية في بلوجر

تقدم منصة بلوجر بعض وسوم البيانات الافتراضية التي يمكنك من خلالها استدعاء بيانات محددة لعرضها مثال: إذا كنت تريد عرض عنوان المدونة دِينَامِيكِيًّا دون أن تقوم بكتابة العنوان بنفسك، يمكنك استخدام "</data:title> ".

الوسم

ماذا يعرض

<data:title/>

عنوان الموقع

<data:newerPageTitle/>

عنوان الصفحة الجديد من المنشورات

<data:olderPageTitle/>

عنوان الصفحة القديمة من المنشورات

<data:description/>

وصف الموقع

<data:commentLabe/l>

عدد التعليقات

</data:post.title/>

عنوان المنشور

<data:post.author/>

اسم كاتب المنشور

<data:post.timestamp/>

تاريخ ووقت نشر المنشور

<data:post.dateHeader/>

تاريخ المشاركة كرأس للمنشور

<data:authorLabel/>

إظهار "نشر بواسطة"

<data:post.body/>

محتوى المنشور

<data:post.ur/l>

رابط المنشور

<data:label.name/>

تسمية المنشور

 

ANCHOR TAG

يتم تحويل ANCHOR TAG (<a>) في بلوجر إلى نص URL. مثال: إذا كان عنوان الرابط للصفحة الرئيسية هو https://www.google.com، فسيتم تحويل هذا الرابط إلى الوسم التالي "<a expr:href='data:blog.homepageUrl >الرئيسية</a>" ثم إلى "<a href="http://www.google.com">الرئيسية</a>".

بعض ANCHOR TAGS الديناميكية

وسوم Anchor الديناميكية

ماذا تعرض

<a expr:href='data:post.url'>اقرأ المزيد</a>

نص لإقرأ المزيد مع رابط الموضوع

<a expr:href='data:post.newerLinkUrl'><data:post.newerLinkText/></a>

المنشورات الأحدث مع رابط للمنشورات الأحدث

<a expr:href='data:comment.authorUrl' rel='nofollow'><data:comment.author/></a>

اسم كاتب المنشور مع رابط مباشر

<a expr:href='data:blog.homepageUrl >الرئيسية</a>

نص مع رابط الصفحة الرئيسية

<a expr:href='data:label.url' property='v:title' rel='v:url'><data:label.name/></a>

اسم التسمية مع رابط مباشر للتسمية

<a expr:href='data:post.newerLinkUrl'><data:post.newerLinkText/></a>

المنشورات الأقدم مع رابط للمنشورات الأقدم

<a expr:href='data:comment.url' title='comment permalink'><data:comment.timestamp/></a>

نص التعليقات للتعليق، مع رابط مباشر

 

إضافة الوقت والتاريخ

لتقوم بإضافة الوقت والتاريخ في موقعك على بلوجر اتبع الشرح التالي:

·     انتقل إلى لوحة تحكم بلوجر < التنسيق < رسائل المدونة < تعديل خيارات صفحة التدوينات

·     تحقق من خيارات الوقت والتاريخ

أو يمكنك استخدام الكود التالي في قالب المدونة بعد هذا السطر "<div class='post-footer-line post-footer-line-1'>".

مربع نص: <span class='post-timestamp'> <b:if cond='data:top.showTimestamp'> <data:top.timestampLabel/> <b:if cond='data:post.url'> <meta expr:content='data:post.url.canonical' itemprop='url'/> <a class='timestamp-link' expr:href='data:post.url' rel='bookmark' title='permanent link'><abbr class='published' expr:title='data:post.timestampISO8601' itemprop='datePublished'><data:post.timestamp/></abbr></a> </b:if> </b:if> </span>

إنشاء الأقسام الأساسية في منصة بلوجر

سنقوم بإنشاء الأقسام التالية:

·     1 – Header

·     2 – Body

·     3 – Sidebar

·     4 – Footer

 

Header

قم بوضع الكود التالي في وسم div header

 



مربع نص: <b:section class='header' id='header' maxwidgets='1' showaddelement='yes'> <b:widget id='Header1' locked='true' title='' type='Header'/> </b:section>

Body



مربع نص: <b:section class='main' id='main' showaddelement='no'> <b:widget id='Blog1' locked='true' title='Blog Posts' type='Blog' version='1'/> </b:section>

قم بوضع الكود التالي في post div

 

Sidebar



مربع نص: <b:section class='sidebar' id='sidebar' preferred='yes' showaddelement='yes'> </b:section>

قم بوضع الكود التالي في sidebar div

 

Footer

قم بوضع الكود التالي في footer div



مربع نص: <b:section class='sidebar' id='sidebar' preferred='yes' showaddelement='yes'> </b:section>

 

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

تعليقات
ليست هناك تعليقات
إرسال تعليق



    وضع القراءة :
    حجم الخط
    +
    16
    -
    تباعد السطور
    +
    2
    -