تعلم السكيما والبيانات المنظمة
البيانات المنظمة أسطر قليلة من الكود تخبر الآلة بما هذه الصفحة: منتج أو مقالة أو نشاط تجاري. ويوصي غوغل بصيغة JSON-LD، وله قاعدة ينبني عليها الباقي: لا ترمّز ما لا يُرى على الصفحة.
- الدرس 10 من 15
- متوسط
- مجاني، دون تسجيل
أربع قطع ناقصة بلا بعضها
لا تعمل البيانات المنظمة إلا إذا كانت القطع الأربع في مواضعها. والقطعة الأولى دائماً الصفحة لا الكود.
-
الصفحة
المعلومة التي يراها القارئ قبل أي كود
-
الكيان
ما الصفحة فعلاً: منتج أو مقالة أو نشاط
-
الترميز
JSON-LD بخصائص ذلك النوع الإلزامية
-
النتيجة
التأهل لعرض غني، لا أكثر
القطعة الرابعة ليست ضماناً. فالترميز الصحيح يجعل الصفحة مؤهلة، وقرار العرض يبقى لغوغل.
آخر مراجعة: تُراجع الحقائق وأسماء الأدوات في هذا الدرس مقابل مصادرها في هذا التاريخ.
ماذا يفعل غوغل بهذا الكود؟
يكتب غوغل أنه يستعمل البيانات المنظمة التي يجدها على الويب لفهم محتوى الصفحة، ولجمع معلومات عن الويب والعالم أيضاً: الأشخاص والكتب والشركات. أي أن هذا الكود قبل كل شيء لغة مشتركة لا تقنية سيو.
وثلاث صيغ مدعومة: JSON-LD وMicrodata وRDFa. ويكتب غوغل أن الثلاث سواء عنده ما دام الترميز صحيحاً ومنفذاً كما ينبغي، ويوصي في معظم الحالات بـJSON-LD، لأنه يجلس في كتلة script مستقلة بدل أن يتداخل مع HTML الصفحة. وعملياً هذا ما يكتبه الناس.
وتوقع ينبغي تقصيره: كتابة هذا الكود لا تعني الحصول على نتيجة غنية. فالترميز الصحيح يجعل الصفحة مؤهلة لعرض غني، وقرار العرض يبقى لغوغل. والصفحة التي لا شيء لديها لتقوله تبقى كذلك ولو وضعت عليها سكيما.
وخطوة أبعد: العروض نفسها تُسحب. فقد كتب غوغل في تحديثات وثائقه أن نتيجة الأسئلة الشائعة الغنية لن تظهر في البحث اعتباراً من ٧ مايو ٢٠٢٦، ثم حذف تلك الوثيقة كلياً؛ وكان قد فعل الشيء نفسه بنتيجة «كيفية العمل» الغنية. أي أن ترميزاً كان يستحق الكتابة سنة ٢٠٢٣ هو اليوم الكود نفسه وبالصلاحية نفسها ولا يعرض شيئاً في النتائج. وهذا الموقع يطبع FAQPage على الصفحات التي فيها أسئلة وأجوبة، ومنذ ذلك التاريخ لا تخرج منه نتيجة غنية؛ وبقاؤه لا بأس به لأنه يصف محتوى مرئياً فعلاً، أما انتظار شيء منه فخطأ.
أي نوع سكيما يخص صفحتك؟
الجواب قصير: النوع الذي هي عليه الصفحة فعلاً. فصفحة بيع استضافة هي Product. وتدوينة هي Article. وصفحة اتصال هي Organization أو LocalBusiness. وصفحة خدمة هي Service. أما اختيار النوع بحسب أي نتيجة غنية أجمل فهو الخطأ الذي ينتهي لاحقاً بإجراء يدوي.
ولكل نوع خصائص إلزامية وأخرى موصى بها، مدرجة في وثيقة غوغل لذلك النوع. فنوع LocalBusiness مثلاً له خاصيتان إلزاميتان: العنوان والاسم. ويكتب غوغل أنه يجب تضمين كل الخصائص الإلزامية كي يكون الكائن مؤهلاً لنتيجة غنية.
ووجود أكثر من نوع على صفحة واحدة أمر طبيعي: فالتدوينة Article، ومسارها BreadcrumbList، وناشرها Organization. والطريقة النظيفة لكتابة عدة أنواع هي الغراف: كتلة JSON-LD واحدة فيها عدة عقد تشير إحداها إلى الأخرى بمعرّف. حينها تُعرَّف «المؤسسة» مرة واحدة وتشير إليها بقية العقد.
مثال صغير يجمع الأفكار الثلاث معاً: النوع الصحيح، وخاصية إلزامية، وإحالة بمعرّف.
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://example.com/#org",
"name": "اسم النشاط التجاري",
"url": "https://example.com/"
},
{
"@type": "Article",
"@id": "https://example.com/post/#article",
"headline": "العنوان نفسه المطبوع على الصفحة",
"datePublished": "2026-09-05",
"publisher": { "@id": "https://example.com/#org" }
}
]
}
ثلاثة أمور تُرى في هذه الأسطر القليلة. أولها أن لكل عقدة معرّفاً وأن المعرّف رابط، فيمكن لأي شيء آخر أن يشير إليه. وثانيها أن ناشر المقالة لم يُعرَّف من جديد بل أحال إلى معرّف المؤسسة؛ وهذه الحركة وحدها تمنع وجود وصفين مختلفين لشيء واحد. وثالثها أن عنوان المقالة هو العنوان المطبوع على الصفحة لا نسخة محسّنة منه، وهذا يقود مباشرة إلى قاعدة القسم التالي.
لماذا لا ترمّز ما ليس على الصفحة؟
كتب غوغل هذا في موضعين منفصلين وكان صريحاً فيهما. في الإرشادات العامة: «لا ترمّز محتوى غير مرئي لقراء الصفحة.» وفي صفحة التعريف: لا تنشئ صفحات فارغة لمجرد حمل بيانات منظمة، ولا تضف ترميزاً عن معلومات لا يراها المستخدم، ولو كانت تلك المعلومات صحيحة.
وهذه الكلمات الأخيرة موضع انتهاء النقاش. وأكثر مبرر نسمعه: «لكن الرقم صحيح فعلاً، غاية الأمر أننا لم نكتبه على الصفحة». وهذا لا يغير شيئاً بحسب السياسة.
وللعاقبة اسم: «مشكلة في البيانات المنظمة» أحد الإجراءات اليدوية المعلنة في سيرش كونسول. وأثرها أن الصفحة تفقد أهليتها للنتائج الغنية. أي أن ما أراد الترميز الزائد كسبه هو نفسه ما يخسره.
والترتيب الصحيح بسيط وأحادي الاتجاه دائماً: ضع المعلومة على الصفحة أولاً ثم رمّزها. ولا تعكس أبداً.
ماذا ترمّز وماذا لا ترمّز أبداً
موجود على الصفحة فرمّزه
- السعر الذي يراه الزائر
- ساعات العمل المكتوبة على صفحة الاتصال
- سؤال وجواب يستطيع المستخدم قراءتهما
- كاتب يظهر اسمه تحت العنوان
ليس على الصفحة فلا أبداً
- تقييم لا يظهر في أي موضع من الصفحة
- تقييم مجموع ذاتياً على نوع نشاط أو مؤسسة
- سؤال وجواب لا وجود لهما إلا داخل الكود
- نوع ليست الصفحة إياه لأن نتيجته أجمل
العمود الثاني ليس مسألة ذوق. فـ«مشكلة في البيانات المنظمة» أحد إجراءات غوغل اليدوية.
لماذا لا يمنح التقييم الذي جمعته بنفسك نجوماً؟
هنا يُكتب أكثر السكيما الخاطئة في سوق صغيرة. ففي وثيقة غوغل عن مقتطف المراجعة بند يجب أن يُقرأ حرفياً: إذا كان الكيان الذي تجري مراجعته يتحكم بالمراجعات عن نفسه، فصفحاته التي تستعمل LocalBusiness أو أي نوع آخر من Organization غير مؤهلة لخاصية نجوم المراجعة.
والمثال الذي يضربه غوغل هو حالتنا الشائعة بعينها: مراجعة عن الكيان «أ» موضوعة على موقع الكيان «أ» نفسه، إما مباشرة في بياناته المنظمة أو عبر ودجت طرف ثالث مضمّن. أي صندوق المراجعات في موقعك أنت، ولو كانت المراجعات حقيقية.
ولاحظ أن القيد مرتبط بنوعين لا بكل الأنواع. فعرض التقييم على أنواع مثل Product وSoftware App ما زال مدعوماً؛ والذي أغلقه غوغل هو التقييم المجموع ذاتياً على نوعي النشاط والمؤسسة. وفي LocalBusiness يقول منفصلاً إن خاصية التقييم موصى بها فقط للمواقع التي تجمع مراجعات عن أنشطة أخرى.
وقاعدة أخرى أقل انتباهاً إليها: المراجعة التي ترمّزها يجب أن تكون متاحة للزائر من الصفحة نفسها، ويجب أن يتضح له فوراً أن في الصفحة محتوى مراجعات. فإن كتبت تقييماً إجمالياً في الترميز وجب أن يُرى ذلك التقييم نفسه على الصفحة.
كيف تختبر وكم كتلة تحمل الصفحة؟
يسمي غوغل مرحلتين منفصلتين، والفصل مهم. أثناء البناء: اختبار النتائج الغنية؛ وبعد النشر: تقارير حالة النتائج الغنية في سيرش كونسول، لأن الترميز يتعطل عادةً لاحقاً بسبب القوالب وطريقة تقديم الصفحة لا أثناء كتابته. وأداة فحص الرابط موجودة لترى هل عثر غوغل على بياناتك المنظمة أصلاً. أما لفحص الكود نفسه، بمعزل عن سؤال الأهلية للنتيجة الغنية، فهناك مدقق schema.org نفسه.
والآن الفخ الذي لا تريكه الأدوات: قد تحمل الصفحة أكثر من كتلة JSON-LD، وهي تحمل ذلك عادةً، لأن القالب يطبع واحدة وكل إضافة تطبع أخرى. على إحدى صفحاتنا يوم ٥ سبتمبر ٢٠٢٦ عددنا أربع كتل منفصلة: غراف من خمس عقد من القالب، وثلاث كتل مستقلة تطبعها الإضافات. عُدّها بأمر واحد:
curl -s -A "Mozilla/5.0" "https://example.com/page/" \
| grep -c 'application/ld+json'
ولماذا يهم؟ لأن اجتماع عدة كتل على صفحة واحدة يتيح وصف الشيء نفسه مرتين وبطريقتين مختلفتين. ففي صفحتنا تلك عقدتا مسار متعارضتان: واحدة بدرجتين وأخرى بثلاث. وهذا بالضبط ما وُجد هذا الفحص لأجله، وقد وجدناه على موقعنا نحن. والقاعدة الصحيحة أن يكون لكل كيان مصدر حقيقة واحد ويشير إليه ما عداه. وعلى موقع تطبع فيه عدة إضافات سكيما معاً، يكون هذا التوحيد عادةً أول عمل ينبغي أن يقوم به مشروع سيو.
ترتيب الاختبار، من الكود إلى ما بعد النشر
الخطوتان الأوليان قبل النشر والتاليتان بعده. والفصل بينهما هو ما يوصي به غوغل.
-
1
مدقق schema.org
أالكود سليم البنية وتتماسك عقده؟
-
2
اختبار النتائج الغنية
أيعرف غوغل هذا النوع وهل الخصائص الإلزامية كاملة؟
-
3
فحص الرابط
أرأى غوغل هذا الكود في النسخة التي جلبها فعلاً؟
-
4
تقرير الحالة في سيرش كونسول
أتعطل بعد النشر؟ هنا يظهر ذلك
لا تقول أي من هذه الأدوات إن نتيجة غنية ستُعرض؛ إنما تقول هل ثمة مانع.
المسار السريع مع الذكاء الاصطناعي
تكتب النماذج اللغوية JSON-LD بطلاقة، وهذا بالضبط ما يجعلها خطرة هنا: فالمخرج يبدو صالحاً دائماً، حتى حين يحمل خصائص لا وجود لها على الصفحة. والطريق السريع الآمن عكس ترتيب العمل. اطلب من النموذج جدول أدلة أولاً، ثم ابنِ الكود من الصفوف التي لها دليل وحدها. ويكفي لهذا نموذج رخيص سريع، فالعمل مطابقة نصوص؛ واختيارنا الحالي في <a class="text-link" href="/ar/ai/">قسم الذكاء الاصطناعي</a>.
- استخرج نص الصفحة المرئي بأمر الوصفة. ولا تلصق كود الصفحة كاملاً؛ ففي موقع يضع تنسيقاته داخل الصفحة يكون حتى قسم الرأس كبيراً على النموذج.
- حدّد نوع السكيما بنفسك وانسخ قائمة خصائصه الإلزامية والموصى بها من وثيقة غوغل. فاختيار النوع ليس عمل النموذج.
- شغّل المرحلة الأولى من الوصفة: جدول الأدلة. صف لكل خاصية، ومعه جملة من الصفحة نفسها تثبت القيمة، أو «ليست على الصفحة» صراحةً.
- احذف صفوف «ليست على الصفحة»، ثم شغّل المرحلة الثانية ليُبنى الكود مما تبقّى. وأخيراً حلّل المخرج مرة ومرره في اختبار النتائج الغنية.
وصفة جاهزة للنسخ
U="https://example.com/page/"
curl -s -A "Mozilla/5.0" "$U" > p.html
python3 -c '
import re, html, sys
h = open("p.html", encoding="utf-8", errors="replace").read()
m = re.search(r"<main.*?</main>", h, re.S)
b = m.group(0) if m else h
b = re.sub(r"<(script|style|nav|footer)[^>]*>.*?</\1>", "", b, flags=re.S)
t = html.unescape(re.sub(r"<[^>]+>", " ", b))
print(re.sub(r"[ \t]+", " ", t).strip())'
# عد الكتل الموجودة أصلاً وتحليل مخرج النموذج:
grep -c 'application/ld+json' p.html
python3 -c 'import json,sys; json.load(open("out.json")); print("JSON OK")'
---- المرحلة ١: جدول الأدلة ----
الدور: مراجع بيانات منظمة. لا تكتب أي كود في هذه المرحلة.
نوع السكيما: {النوع}
خصائص هذا النوع الإلزامية والموصى بها، من وثيقة غوغل:
{قائمة الخصائص}
نص الصفحة المرئي:
{مخرج الأمر أعلاه}
اكتب صفاً لكل خاصية بثلاثة أعمدة: اسم الخاصية، والقيمة، والدليل.
وعمود الدليل يجب أن يكون جملة منقولة حرفياً من النص أعلاه تثبت القيمة. فإن لم
توجد جملة كهذه فاكتب «ليست على الصفحة» في عمودي القيمة والدليل معاً.
القواعد:
- لا تملأ أي قيمة من معرفتك العامة، ولو كنت واثقاً من صحتها.
- اكتب الوحدة والعملة والتاريخ كما وردت على الصفحة ولا تحوّل شيئاً.
- لا تضف خاصية ليست في القائمة أعلاه.
- لا تكتب JSON في هذه المرحلة.
---- المرحلة ٢: بناء الكود ----
الآن ابنِ كتلة JSON-LD واحدة من الصفوف التي لها دليل، ومنها وحدها.
القواعد:
- أسقط صفوف «ليست على الصفحة» كلياً. ولا تضع لها بديلاً.
- إن كانت خاصية إلزامية لهذا النوع بلا دليل فلا تبنِ الكود، واذكر بدل ذلك أي
خاصية إلزامية غائبة عن الصفحة.
- ليكن المخرج JSON فقط، بلا شرح وبلا نص محيط.
قبل أن تثق بالناتج: تحقق من أمرين بنفسك قبل النشر. أولاً أن جمل عمود الدليل موجودة فعلاً في الصفحة؛ فإن ألّف النموذج جملة صار جدول الأدلة عين ما جيء به ليمنعه. وثانياً ألا تكون الصفحة تحمل أصلاً كتلة أخرى تصف الكيان نفسه وصفاً مختلفاً؛ ولهذا وُضع أمر العد في الوصفة. ومرّر الكود المولَّد في اختبار النتائج الغنية: فتحليل الـJSON يقول إن البنية سليمة فحسب، لا إن المعنى يطابق الصفحة.
الذكاء الاصطناعي في هذا العمل
السكيما من المواضع القليلة في السيو التي يكون فيها النموذج اللغوي أسرع من الإنسان فعلاً، لأن المخرج ذو بنية محددة والمدخل نص. والمشكلة في موضع آخر: حين يجهل النموذج شيئاً يخترعه، واختراعه يشبه بقية الكود تماماً.
أدوات تساعد فعلا
- Claude يناسب مرحلة جدول الأدلة، لأنه أقل إعادة صياغة حين تطلب اقتباساً حرفياً. وإيران ليست في أي من قائمتي الدول المدعومة لدى أنثروبيك.
- Gemini يكفي لإنتاج كتلة JSON نفسها من جدول معتمد. وصفحتنا تذكر أن إيران ليست في قائمة الدول المدعومة لدى غوغل؛ وطريق الدفع في <a class="text-link" href="/ar/ai/buy/">شراء الذكاء الاصطناعي</a>.
- Rich Results Test ليس ذكاءً اصطناعياً ولا يحل محل أي مما سبق. وهو الموضع الوحيد الذي يخبرك أن غوغل يعرف هذا النوع وأن لا خاصية إلزامية ناقصة.
اين ينقلب ضدك
الخطر المحدد هنا بسيط وآلي: يكتب النموذج خصائص لا وجود لها على الصفحة، لأنه تعلم من ملفات مشابهة أن تلك الخصائص موجودة عادةً. تقييم ٤٫٨ لا يظهر في أي موضع، وعدد مراجعات لم يحصه أحد، وتاريخ نشر لم يُكتب قط. وإرشاد غوغل صريح بأنه لا يجوز ترميز محتوى غير مرئي للقراء ولو كان صحيحاً، و«مشكلة في البيانات المنظمة» أحد الإجراءات اليدوية. والطبقة الثانية من الخطر خصائص لا وجود لها أصلاً أو غير معرَّفة لذلك النوع؛ وهذه تلتقطها الأدوات، لكنها تكلفك وقتاً. والقاعدة التي نلتزم بها، وهي قاعدة وكالتنا: لا ترمّز إلا ما يُرى على الصفحة.
المصادر: Google Search Central: structured data general guidelines Google Search Central: introduction to structured data markup Google Search Console Help: manual actions report
حدود هذه النصيحة
البيانات المنظمة لا تجلب ترتيباً. وما تفعله أنها تجعل الصفحة مؤهلة لعرض غني وتفهّم الآلة موضوع الصفحة؛ ولم يقل غوغل في أي موضع إن هذا الكود بذاته إشارة ترتيب. وإن كان محتوى الصفحة خاطئاً فلا تصلحه السكيما. ولا يمكن ضمان النتيجة الغنية أيضاً: فقرار العرض لغوغل وقد يختلف للصفحة نفسها من أسبوع إلى آخر.
من عملنا نحن
على هذا الموقع نفسه، أُطفئت سكيما إضافة السيو الافتراضية بسطر مرشِّح واحد، ويطبع القالب غراف JSON-LD خاصاً به، كي تُبنى كل العقد في موضع واحد وتبقى متسقة. والقرار الثاني أطرف: لا يُحقن التقييم الإجمالي إلا في ثماني صفحات تحمل فعلاً عقدة مؤهلة على مستوى الصفحة، وهي سبع صفحات استضافة وشهادات فيها Product، وصفحة أداة واحدة فيها SoftwareApplication. أما صفحات الخدمات ومن نحن والتدوينات فالنجوم تُرى داخل الصفحة ولا يُنتَج فيها ترميز تقييم أصلاً، لأن قاعدة غوغل عن المراجعات المجموعة ذاتياً تمنع ذلك. وصفحات النطاقات الثلاث خارج القائمة لأنها بلا عقدة Product أصلاً، وأربع صفحات أدوات أخرى خارجها لأنها لا تنال SoftwareApplication إلا من كتالوج المؤسسة، وهو عنصر كتالوج لا عنصر تلك الصفحة. وفي الكود شرط أخير يجمع ذلك كله: إن كان عدد المراجعات صفراً فلا يُنتَج تقييم، لأن سكيما تقييم بلا مراجعات خطأ في سيرش كونسول بذاته. ولهذا فعقدة Product في صفحة استضافة لينكس، يوم كُتب هذا الدرس، تحمل سعراً ولا تحمل تقييماً. افتحها وانظر بنفسك.
اسئلة متابعة حقيقية
هل ترفع السكيما ترتيب الموقع؟
يقول غوغل إنه يستعمل البيانات المنظمة لفهم محتوى الصفحة ولجعلها مؤهلة لعرض غني. ولم يقل في أي موضع إن هذا الكود بذاته إشارة ترتيب. والأثر الذي يُلمس عملياً يأتي عادةً من نسبة النقر لا من تحرك في النتائج.
أأكتب السكيما بإضافة أم يدوياً؟
لمعظم المواقع تكفي الإضافة وهي الجواب الصحيح. ويبدأ الكتابة اليدوية بالمعنى حين تطبع عدة إضافات سكيما معاً وتتعارض الأوصاف، أو حين تكون الصفحة نوعاً لا تعرفه الإضافة. وإن كتبت يدوياً فعُدّ المخرج الحالي أولاً كي لا تصنع وصفين متوازيين.
لديّ مراجعات زبائن حقيقية، فلماذا لا أنال نجوماً؟
لأن قاعدة غوغل لا تعنى بصدق المراجعة بل بمن يتحكم بالمراجعات. فمراجعة عنك جُمعت على موقعك أنت ليست مؤهلة للنجوم على نوعي النشاط والمؤسسة. أبقِ المراجعات فهي تستحق الوجود من أجل الزائر؛ فقط لا تبنِ ترميز تقييم على هذين النوعين.
بعد إزالة نتيجة الأسئلة الشائعة الغنية، أنحذف FAQPage؟
لا حاجة. فالكود ما زال صالحاً ويصف محتوى موجوداً فعلاً على الصفحة، فلا عقوبة فيه ولا خطأ. غاية الأمر أنه لم يعد يعرض شيئاً في النتائج، وإن كان سبب كتابته الوحيد ذلك العرض فإزالته أيضاً لا تضر.