انتقل إلى المحتوى
SEO Madmanby Adam Hafez
أداة مجانية

أداة فحص حقول JobPosting المطلوبة والمقترحة

افحص كود JSON-LD لإعلان وظيفة وفق 5 خصائص مطلوبة و7 مقترحة توثّقها Google، مع قيم employmentType وتاريخ الانتهاء. مجانية وتعمل في متصفحك.

تعمل بالكامل في متصفحك. لا يُرفع ما تُدخله، ولا يُسجَّل، ولا يُحفظ.

يُحلَّل الكود بالدالة JSON.parse في متصفحك، ويُقارن بجداول خصائص JobPosting التي توثّقها Google. لا يُرسل أي شيء تكتبه إلى أي مكان.

أهم النقاط

  • توثّق Google خمس خصائص مطلوبة في JobPosting، هي title وdescription وdatePosted وhiringOrganization وjobLocation، وسبع خصائص مقترحة.
  • لا تكون jobLocation مطلوبة إذا وُجدت applicantLocationRequirements، وهذا هو الاستثناء الذي توثّقه Google للوظائف عن بُعد بالكامل.
  • الوظيفة التي قيمة jobLocationType فيها TELECOMMUTE تحتاج دائمًا إلى دولة واحدة على الأقل، عبر applicantLocationRequirements أو jobLocation بديلة.
  • تذكر Google ثماني قيم مقبولة لـ employmentType، وتنبّه إلى أن عدم التصرف في الوظائف المنتهية قد يؤدي إلى إجراء يدوي.
  • تغطي هذه الأداة نوع JobPosting تحديدًا، وهو نوع لا يدخل ضمن الأنواع السبعة التي تدعمها أداة التحقق العامة من JSON-LD في الموقع.

ما تحتاج إليه

  • كود JobPosting واحد بصيغة JSON-LD

أدوات أخرى

كلها مجانية، وكلها تعمل في المتصفح.

تصفّح الأدوات

طريقة الاستخدام

  1. 1الصق كود JobPosting بصيغة JSON-LDانسخ محتوى وسم script الذي نوعه application/ld+json ويصف الوظيفة، دون كود الصفحة المحيط به.
  2. 2أصلِح أي خاصية مطلوبة مفقودة أولًاالخصائص الخمس المطلوبة في مستندات Google هي title وdescription وdatePosted وhiringOrganization وjobLocation. وغياب واحدة منها يُخرج الإعلان من النتائج الغنية بصريًا للوظائف كليًا.
  3. 3راجِع استثناء jobLocation للوظيفة عن بُعدقيمة TELECOMMUTE في jobLocationType تُعفي من jobLocation فقط إذا ذكرت applicantLocationRequirements دولة واحدة على الأقل. وحذف الاثنتين معًا يفشل.
  4. 4طابِق employmentType مع القيم الموثّقةتقبل Google القيم FULL_TIME وPART_TIME وCONTRACTOR وTEMPORARY وINTERN وVOLUNTEER وPER_DIEM وOTHER. وأي نص آخر ليس قيمة موثّقة، حتى لو كان JSON صالحًا.
  5. 5اضبط validThrough واحذف الإعلان في وقتهغياب validThrough يعني عدم وجود إشارة موثّقة لموعد إغلاق الوظيفة. وتقول Google صراحة إن عدم إنهاء الإعلان المغلق في وقته قد يؤدي إلى إجراء يدوي.

JobPosting من أكثر أنواع البيانات المنظَّمة تحديدًا في مستندات Google: جدول للخصائص المطلوبة، وجدول للمقترحة، وقائمة ثابتة لأنواع التوظيف، وقاعدة خاصة للوظائف عن بُعد، وسياسة للوظائف المنتهية.

تطبّق هذه الأداة كل تلك القواعد. الصق كائن JobPosting واحدًا بصيغة JSON-LD، وستعرض كل خاصية في بطاقة، بعد تحليل الكود بالدالة JSON.parse في متصفحك.

ماذا تفحص الأداة؟

  • @type: ناجح عندما تكون القيمة JobPosting، وتحذير في غير ذلك، لأن جداول الخصائص مأخوذة من مستندات Google عن JobPosting.
  • خمس خصائص مطلوبة: title وdescription وdatePosted وhiringOrganization وjobLocation. والخاصية الغائبة أو التي قيمتها null أو نص فارغ تُعد مفقودة.
  • استثناء العمل عن بُعد: تقول Google إن jobLocation غير مطلوبة إذا وُجدت applicantLocationRequirements. وعندها تعرض الأداة jobLocation كمفقودة لكنها مُعفاة، وتُنجحها.
  • الوظيفة عن بُعد تحتاج إلى دولة: مع jobLocationType: "TELECOMMUTE" تطلب Google تحديد دولة واحدة على الأقل، عبر applicantLocationRequirements (المفضّلة) أو دولة jobLocation.
  • غياب الاثنتين: إذا غابت applicantLocationRequirements وjobLocation معًا، تضيف الأداة بطاقة فاشلة.
  • سبع خصائص مقترحة: employmentType وbaseSalary وvalidThrough وjobLocationType وapplicantLocationRequirements وidentifier وdirectApply. وغيابها يظهر كمعلومة فقط.
  • قيم employmentType: كل قيمة، مفردة أو في مصفوفة، يجب أن تكون واحدة من FULL_TIME أو PART_TIME أو CONTRACTOR أو TEMPORARY أو INTERN أو VOLUNTEER أو PER_DIEM أو OTHER.
  • validThrough: تنبّه الأداة إلى التاريخ الذي مضى، لأن Google تحذّر من أن عدم التصرف في الوظائف المنتهية قد يؤدي إلى إجراء يدوي.

كيف تقرأ النتائج؟

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

  • ناجح: الخاصية موجودة أو القيمة صالحة.
  • مطلوبة ومفقودة: خاصية مطلوبة غائبة، أو وظيفة عن بُعد بلا دولة، أو تاريخ validThrough مضى. أصلِح هذه أولًا.
  • تحذير: قيمة @type ليست JobPosting، أو قيمة employmentType ليست في قائمة Google.
  • معلومة: خاصية مقترحة مفقودة. أضِفها إن كانت لديك البيانات، مثل راتب حقيقي في baseSalary أو تاريخ إغلاق في validThrough.

إذا ظهرت رسالة أن الكود ليس JSON صالحًا مع رسالة المحلّل، فأصلِح الصياغة أولًا. لا يعمل أي فحص قبل أن يُحلَّل الكود.

مثال عملي

تبدأ الأداة بإعلان عن بُعد لوظيفة Senior SEO Analyst فيه title وdescription وdatePosted وhiringOrganization، مع jobLocationType: "TELECOMMUTE" وemploymentType: "FULL_TIME". والنتيجة:

  • تنجح @type وtitle وdescription وdatePosted وhiringOrganization.
  • تظهر jobLocation كمطلوبة ومفقودة، لأنه لا توجد applicantLocationRequirements تُعفي منها.
  • تفشل بطاقة إضافية عن حاجة الوظيفة عن بُعد إلى دولة، لأن applicantLocationRequirements وjobLocation كلتيهما غائبتان.
  • تنجح employmentType وjobLocationType. وتظهر baseSalary وvalidThrough وapplicantLocationRequirements وidentifier وdirectApply كمعلومة لأنها مفقودة.
  • تنجح employmentType في فحص القيمة، وتظهر بطاقة تحديد validThrough كمعلومة.

إضافة خاصية واحدة تُصلح الفشلين معًا:

"applicantLocationRequirements": { "@type": "Country", "name": "USA" }

عندها تظهر jobLocation كمفقودة لكنها مُعفاة، وتختفي بطاقة الدولة للوظيفة عن بُعد.

أخطاء شائعة تكشفها

  • وظائف عن بُعد بلا موقع جغرافي: قيمة TELECOMMUTE وحدها لا تحقق قاعدة Google، فما زالت الدولة مطلوبة.
  • أنواع توظيف مختلَقة: قيم مثل Full-time أو PERMANENT ليست ضمن قائمة Google الثمانية. والمطابقة حساسة لحالة الأحرف، فاستخدم القيم الكبيرة كما هي.
  • وظائف مغلقة ما زال ترميزها قائمًا: تاريخ validThrough في الماضي مع بقاء الصفحة منشورة هو الحالة التي تربطها Google بإجراء يدوي محتمل.
  • نصوص مطلوبة فارغة: قيمة "description": "" التي يتركها قالب تُعد مفقودة هنا. وتطلب Google الوصف الكامل للوظيفة بلغة HTML، بما فيه المسؤوليات والمؤهلات والمتطلبات.

ما لا تفحصه الأداة: تنسيق datePosted (تطلب Google تنسيق ISO 8601، مثل 2026-09-01)، وبنية hiringOrganization أو baseSalary من الداخل، ووجود الترميز في الصفحة نفسها التي تعرض وصف الوظيفة.

أدوات وقراءات ذات صلة

المصادر

  1. 1.Job posting (JobPosting) structured data، Google Search Centralمصدر أساسي

أسئلة شائعة

ما الحقول المطلوبة في البيانات المنظَّمة لـ JobPosting؟

توثّق Google خمس خصائص مطلوبة: datePosted وdescription وhiringOrganization وjobLocation وtitle. والمقترحة هي applicantLocationRequirements وbaseSalary وdirectApply وemploymentType وidentifier وjobLocationType وvalidThrough. وتعرض الأداة كل خاصية من الاثنتي عشرة وحالتها.

كيف أضيف الترميز لوظيفة عن بُعد بالكامل؟

اضبط jobLocationType على TELECOMMUTE، واذكر في applicantLocationRequirements دولة واحدة على الأقل يمكن العمل منها. تفضّل Google هذه الخاصية، ومع وجودها لا تعود jobLocation مطلوبة. والإعلان عن بُعد بلا الخاصيتين يفشل في هذه الأداة.

لماذا لا تغطي أداة التحقق من JSON-LD في الموقع نوع JobPosting؟

تلك الأداة تغطي Article وProduct وFAQPage وHowTo وOrganization وBreadcrumbList وRecipe. أما JobPosting فله جداول خاصة للخصائص المطلوبة والمقترحة، وقيم محددة لـ employmentType، وإرشادات للانتهاء لا تشاركها الأنواع الأخرى، لذلك يُفحص هنا.

ماذا يحدث إذا بقي إعلان الوظيفة بعد إغلاقها؟

تقول Google إن الوظائف التي لم تعد تقبل طلبات يجب إنهاؤها، مثلًا بتاريخ validThrough في الماضي، وإن عدم التصرف في الوقت المناسب قد يؤدي إلى إجراء يدوي. وتنبّه الأداة إلى تاريخ validThrough الذي مضى.

هل يمكنني لصق وسم script كاملًا أو صفحة فيها @graph؟

لا. الصق كائن JSON واحدًا قيمة @type فيه JobPosting، دون وسم script المحيط به. تستخدم الأداة JSON.parse، لذلك يظهر أي HTML حول الكود كخطأ في JSON، ويجعل غلاف المصفوفة أو @graph كل الحقول مفقودة.

هل تضمن النتيجة الناجحة ظهور النتائج الغنية بصريًا للوظائف؟

لا. تؤكد الأداة وجود الخصائص التي توثّقها Google وصحة قيمتين فقط. وتعتمد الأهلية أيضًا على سياسات المحتوى لدى Google، مثل أن يظهر الترميز في الصفحة نفسها التي تعرض وصف الوظيفة للباحثين عن عمل.