توحيد الإملاء في البحث العربي داخل المواقع: اختبرنا 20 متجرًا إلكترونيًا عربيًا

ما زال البحث العربي داخل المواقع يتعثر عند فروق إملائية بسيطة. في 8 أكتوبر 2026 جرّبنا أربعة أزواج إملائية في محرك البحث الداخلي لعشرين متجرًا إلكترونيًا في السعودية والإمارات ومصر. لم يُعِد المنتجات نفسها في كل الأزواج إلا 4 متاجر من 20، وفرّق زوج التاء المربوطة والهاء النتائج في 10 متاجر من العشرين.
أبرز النقاط
- بحثنا في 20 متجرًا (12 سعوديًا و3 إماراتية و5 مصرية) يوم 8 أكتوبر 2026 بأربعة أزواج إملائية. أعادت 4 متاجر من 20 المنتجات نفسها في كل زوج اختبرناه: واجهات Amazon الثلاث وسلسلة صيدليات سعودية.
- كان زوج التاء المربوطة والهاء أضعف الأزواج: نتائج متطابقة في 10 متاجر من 20، وترتيب مختلف في 3، ومنتجات مختلفة في 7.
- لم تُعِد 3 متاجر أي منتج عند كتابة الأرقام الهندية، وفقدت 5 متاجر من الـ19 التي أمكن اختبار الأرقام فيها نتائجها أو تغيّرت.
- طابقت متاجر Salla الأربعة الأرقام كلها، وفرّقت جميعها زوجًا حرفيًا واحدًا على الأقل. أما متجرا Zid اللذان أمكن اختبار الأرقام فيهما فلم يُعيدا شيئًا مع الأرقام الهندية.
- يجمع محلل arabic المدمج في Elasticsearch المرشحين decimal_digit وarabic_normalization، وهما معًا يغطيان الأزواج الأربعة كلها.
النتائج في 20 متجرًا عربيًا
نجحت معظم الأزواج في معظم المتاجر، ومع ذلك أخفق 16 متجرًا من 20 في زوج واحد على الأقل. ومن 74 عملية بحث مزدوجة، أعادت 51 عملية (69%) المنتجات نفسها بالكتابتين، وأعادت 3 عمليات النتائج نفسها بترتيب مختلف، وأعادت 20 عملية منتجات مختلفة أو لا شيء. وكان زوج التاء المربوطة أضعف الأزواج، والألف الممدودة أقواها.
كل زوج كلمةٌ واحدة لمنتج تُكتب بطريقتين. اخترنا كلمات موجودة في كتالوج كل متجر، فأخذ متجر القهوة كلمات عن القهوة، وأخذت الصيدلية كلمات عن العناية بالبشرة. ويعرض الجدول النتائج بصيغة «الكتابة الأولى مقابل البديلة».
| المتجر (الدولة، القطاع، المنصة) | الهمزة على الألف | التاء المربوطة مقابل الهاء | الألف الممدودة | الأرقام الهندية |
|---|---|---|---|---|
| Amazon.sa (سوق إلكتروني سعودي) | متطابقة | متطابقة | متطابقة | متطابقة |
| Amazon.ae (سوق إلكتروني إماراتي) | متطابقة | متطابقة | متطابقة | متطابقة |
| Amazon.eg (سوق إلكتروني مصري) | متطابقة | متطابقة | متطابقة | متطابقة |
| سوق إلكتروني إقليمي، الواجهة السعودية | متطابقة | مختلفة (50 مقابل 74) | متطابقة | متطابقة |
| سوق إلكتروني إقليمي، الواجهة الإماراتية | متطابقة | مختلفة (3 مشتركة من أول 10) | متطابقة | متطابقة |
| سوق إلكتروني إقليمي، الواجهة المصرية | مختلفة (78 مقابل 50) | الترتيب مختلف | متطابقة | متطابقة |
| متجر إلكترونيات مصري، Magento | مختلفة (7 مقابل 42) | متطابقة | متطابقة | صفر (45 مقابل 0) |
| متجر سعودي للإلكترونيات والكتب، واجهة بحث مستضافة (API) | متطابقة | الترتيب مختلف | متطابقة | متطابقة |
| متجر إلكترونيات سعودي، اقتراح تلقائي مستضاف | متطابقة | متطابقة | مختلفة (0 مشتركة من 6) | متطابقة |
| متجر قهوة سعودي، Salla | مختلفة (23 مقابل 21) | الترتيب مختلف | مختلفة (16 مقابل 7) | متطابقة |
| متجر عسل سعودي، Salla | متطابقة | مختلفة (4 مقابل 2) | لم يُختبر | متطابقة |
| متجر تمور سعودي، Salla | مختلفة (11 مقابل 4) | مختلفة (127 مقابل 26) | لم يُختبر | متطابقة |
| متجر سعودي للعود والعطور، Salla | مختلفة (5 مقابل 1) | مختلفة (5 مقابل 4) | لم يُختبر | متطابقة |
| محمصة قهوة سعودية، Zid | متطابقة | مختلفة (44 مقابل 42) | متطابقة | صفر (6 مقابل 0) |
| متجر تمور سعودي، Zid | متطابقة | متطابقة | لم يُختبر | صفر (1 مقابل 0) |
| متجر سعودي لزبدة المكسرات، Zid | مختلفة (4 مقابل 5) | متطابقة | لم يُختبر | لم يُختبر |
| سوق إلكتروني مصري | متطابقة | مختلفة (4 مشتركة من أول 10) | متطابقة | متطابقة |
| متجر مصري للإلكترونيات والأجهزة المنزلية، واجهة مخصصة | متطابقة | متطابقة | متطابقة | مختلفة (1,171 مقابل 172) |
| متجر إلكترونيات إماراتي، واجهة WordPress | متطابقة | متطابقة | متطابقة | مختلفة (تجاهل الرقم) |
| سلسلة صيدليات سعودية | متطابقة | متطابقة | متطابقة | متطابقة |
«لم يُختبر» تعني أن الكتالوج خلا من كلمة منتج فيها تلك الخاصية، فلو اختبرنا الزوج لقارنّا صفرًا بصفر. خمسة متاجر للأغذية والعطور لم تكن فيها كلمة بألف ممدودة، ومتجر واحد لم ترد أرقام في أسماء منتجاته.
لماذا تتفرق نتائج البحث العربي بين أربع كتابات للكلمة الواحدة؟
كل كتابة بديلة حرفٌ مختلف في Unicode، ولا يعدّ محرك البحث حرفين متساويين إلا إذا ردّهما المحلل إلى صورة واحدة. وقد وجدنا الصورتين داخل المتاجر نفسها: أربعة متاجر في عيّنتنا كتبت أسماء منتجاتها بالصورة البديلة، فقد لا يعثر المتسوق الذي يكتب الكلمة بإملائها الصحيح على منتجات متوفرة فعلًا.
قائمة متجر القهوة نفسها تكتب القهوة «قهوه»بهاء في آخرها. ومتجر العسل يكتب «حبه» (قطعة) بالهاء، ومتجر التمور على Salla يكتب «ابيض» بلا همزة، ومتجر العطور يكتب «اعواد» (أعواد البخور) بلا همزة. وإليك ما يغيّره كل زوج على مستوى رموز Unicode:
- الهمزة على الألف: الألف بهمزة فوقها (U+0623) أو تحتها (U+0625) مقابل الألف المجردة (U+0627).
- الألف الممدودة: U+0622 مقابل الألف المجردة U+0627، كما في إحدى الكتابات العربية لكلمة «آيفون».
- التاء المربوطة مقابل الهاء: U+0629 مقابل U+0647 في آخر الكلمة، كما في ساعة (ساعة اليد).
- الأرقام: الأرقام الهندية من U+0660 إلى U+0669 مقابل الأرقام الغربية من 0 إلى 9. وتذكر وثيقة متطلبات تخطيط النصوص العربية الصادرة عن W3C أن الأرقام الهندية هي المستعملة في مصر والسعودية، وأن الأرقام الهندية الموسّعة (U+06F0 إلى U+06F9) مستعملة في إيران وأفغانستان.
يغطي ArabicNormalizer في مكتبة Lucene الأزواج الثلاثة الأولى: يردّ صور الألف المهموزة والممدودة إلى الألف المجردة، والتاء المربوطة إلى هاء، والألف المقصورة إلى ياء، ويحذف الحركات والتطويل. أما الأرقام فتحتاج إلى مرشح مستقل.
أي المتاجر والمنصات فقدت نتائج؟
تجمّعت الإخفاقات بحسب المنصة. طابقت واجهات Amazon الثلاث وسلسلة صيدليات سعودية كل الأزواج. وطابقت متاجر Salla كل استعلامات الأرقام، لكنها فرّقت زوجًا حرفيًا واحدًا على الأقل في المتاجر الأربعة كلها. أما متاجر Zid فطابقت معظم الأزواج الحرفية، ولم تُعِد شيئًا مع الأرقام الهندية في المتجرين اللذين أمكن اختبارهما.
جاءت أكبر فجوة منفردة من متجر إلكترونيات مصري على Magento. فكلمة «أجهزة»، أعادت بالهمزة 7 بطاقات منتجات، وبلا همزة 42 بطاقة، ولم يظهر أيٌّ من السبع بين الاثنتين والأربعين. وأعاد المتجر نفسه 45 بطاقة لاستعلام iPhone 15 بالأرقام الغربية، ولا شيء للاستعلام نفسه بالأرقام الهندية.
لم تُعِد ثلاثة متاجر أي منتج حين كتب المتسوق الرقم نفسه بالأرقام الهندية، وغيّر متجران آخران النتائج: هبطت نتائج متجر مصري للأجهزة المنزلية من 1,171 إلى 172، وتجاهل متجر إلكترونيات إماراتي الرقم فعرض أغطية iPhone 18 لاستعلام iPhone 15.
أدقّ الحالات كانت لمتجر سعودي يعتمد على واجهة بحث مستضافة. أعادت كتابتا كلمة الساعة 1,396 نتيجة بالضبط، فالمطابقة موحّدة، ومع ذلك لم يتكرر أي منتج من أول 40 منتجًا. وكشفت استجابة الواجهة عن منتجات مثبّتة مربوطة بالكتابة بالتاء المربوطة وحدها، فانطبقت قاعدة العرض التسويقي على كتابة دون الأخرى.
لم تُعِد ثلاثة متاجر أي منتج حين كتب المتسوق الرقم نفسه بالأرقام الهندية.
كيف توحّد كتابة العربية في Elasticsearch أو OpenSearch؟
شغّل محللًا واحدًا وقت الفهرسة ووقت الاستعلام، وتأكد أنه يتضمن arabic_normalization وdecimal_digit. فالمحلل arabic المدمج في Elasticsearch يجمع أصلًا lowercase وdecimal_digit وكلمات التوقف وarabic_normalization ومُجذِّعًا، فالحقل المربوط به يدمج الأزواج الأربعة التي اختبرناها كلها.
يعرض مرجع محللات اللغات من Elastic هذه السلسلة محللًا مخصصًا معاد البناء. ويحوّل مرشح decimal_digit كل رقم من فئة Decimal_Number في Unicode إلى الأرقام من 0 إلى 9. ونفضّل لأسماء المنتجات سلسلة أخف بلا مُجذِّع، ثم أضف حقلًا فرعيًا مُجذَّعًا لاحقًا إن احتجت إليه في اختبار الاستدعاء:
PUT /products
{
"settings": {
"analysis": {
"analyzer": {
"ar_product": {
"tokenizer": "standard",
"filter": ["lowercase", "decimal_digit", "arabic_normalization"]
}
}
}
},
"mappings": {
"properties": {
"name": { "type": "text", "analyzer": "ar_product" }
}
}
}
GET /products/_analyze
{
"analyzer": "ar_product",
"text": "\u0623\u062C\u0647\u0632\u0629 \u0661\u0665"
}
// expected tokens: "\u0627\u062C\u0647\u0632\u0647" and "15"
تقبل صيغة JSON رموز الهروب \u، فتستطيع لصق نصوص الاختبار في _analyze بلا لوحة مفاتيح عربية. ويطبّق مرشح icu_folding قواعد طيّ على مستوى Unicode كله مبنية على UTR#30، فمرّر مصطلحات كتالوجك في _analyze قبل اعتماده. وتوثّق OpenSearch كذلك محلل arabic مدمجًا، فافحص سلسلة مرشحاته بالطريقة نفسها.
إن فضّلت أن يختبر مطوّر هذه الأزواج الأربعة على كتالوجك ويصلح المحلل، افحصوا البحث العربي في متجري.
إعدادات Algolia وترتيب المحارف (Collation) في MySQL
يتجاهل Algolia افتراضيًا أربع حركات عربية شائعة، ويعدّ الصورتين العربية والفارسية للكاف والياء متساويتين. ولا يذكر دليل التوحيد فيه أي قاعدة للهمزة أو التاء المربوطة أو الأرقام الهندية، فأضفها بنفسك بإعداد customNormalization. وفي MySQL اختبر ترتيب المحارف بالدالة WEIGHT_STRING() قبل أن تثق به، واحتفظ بعمود موحّد للبحث.
يقول دليل التوحيد في Algolia إن التوحيد يجري وقت الفهرسة ووقت الاستعلام ولا يمكن إيقافه. ويحوّل إعداد customNormalization الحرف الواحد إلى حرفين على الأكثر، ولا ينطبق على التسلسلات المفككة المبنية بعلامات التركيب:
{
"customNormalization": {
"default": {
"\u0623": "\u0627", "\u0625": "\u0627", "\u0622": "\u0627",
"\u0629": "\u0647",
"\u0660": "0", "\u0661": "1", "\u0662": "2", "\u0663": "3", "\u0664": "4",
"\u0665": "5", "\u0666": "6", "\u0667": "7", "\u0668": "8", "\u0669": "9"
}
}
}
تصف وثائق ترتيب محارف Unicode في MySQL الترتيب utf8mb4_0900_ai_ci بأنه لا يميّز علامات التشكيل ولا حالة الأحرف، وأنه مبني على UCA 9.0.0. وتضم قائمة الترتيبات الخاصة باللغات الفارسيةَ ولا تضم أي تخصيص للعربية. افحص ما يفعله ترتيبك مع صور الهمزة:
SELECT
HEX(WEIGHT_STRING(_utf8mb4 0xD8A3 COLLATE utf8mb4_0900_ai_ci)) AS alef_hamza_above,
HEX(WEIGHT_STRING(_utf8mb4 0xD8A7 COLLATE utf8mb4_0900_ai_ci)) AS bare_alef;
-- different weights = LIKE and = treat the two spellings as different words
أما البحث القائم على LIKE فلا نعتمد فيه على ترتيب المحارف أصلًا. خزّن نسخة موحّدة من الاسم في عمود مفهرس مستقل، تبنيها الدالة في القسم التالي، واستعلم من ذلك العمود.
دالة توحيد بلغتي JavaScript وPHP
إذا كان البحث يعمل على استعلام قاعدة بيانات أو فهرس داخلي صغير فوحّد الكتابة في شيفرة التطبيق. اكتب نسخة موحّدة من اسم كل منتج عند حفظه، ومرّر كل استعلام وارد على الدالة نفسها قبل أن يصل إلى الفهرس. وتحاكي المطابقة التالية ArabicNormalizer في Lucene وتضيف نطاقي الأرقام الهندية كليهما.
// JavaScript: run on product text at save time AND on every search query
const AR_MAP = {
'\u0622': '\u0627', // alef with madda above -> alef
'\u0623': '\u0627', // alef with hamza above -> alef
'\u0625': '\u0627', // alef with hamza below -> alef
'\u0629': '\u0647', // taa marbuta -> haa
'\u0649': '\u064A', // alef maksura -> yaa
};
export function normalizeArabic(input) {
return input
.normalize('NFC')
.replace(/[\u064B-\u0652\u0640]/g, '') // short vowels, shadda, sukun, tatweel
.replace(/[\u0622\u0623\u0625\u0629\u0649]/g, (ch) => AR_MAP[ch])
.replace(/[\u0660-\u0669]/g, (d) => String(d.charCodeAt(0) - 0x0660))
.replace(/[\u06F0-\u06F9]/g, (d) => String(d.charCodeAt(0) - 0x06F0))
.toLowerCase()
.trim();
}
// PHP 7.4+ (arrow functions): same mapping, using \u{...} string escapes and /u regexes
function normalize_arabic(string $s): string {
$s = preg_replace('/[\x{064B}-\x{0652}\x{0640}]/u', '', $s);
$s = strtr($s, [
"\u{0622}" => "\u{0627}", "\u{0623}" => "\u{0627}", "\u{0625}" => "\u{0627}",
"\u{0629}" => "\u{0647}", "\u{0649}" => "\u{064A}",
]);
$s = preg_replace_callback('/[\x{0660}-\x{0669}]/u',
fn ($m) => (string) (mb_ord($m[0], 'UTF-8') - 0x0660), $s);
$s = preg_replace_callback('/[\x{06F0}-\x{06F9}]/u',
fn ($m) => (string) (mb_ord($m[0], 'UTF-8') - 0x06F0), $s);
return mb_strtolower(trim($s), 'UTF-8');
}
جرّبنا نسخة JavaScript على أزواج الإلكترونيات من اختبارنا، فأعطى كل زوج مخرجات متطابقة. String.prototype.normalize تعمل أولًا لتتساوى التسلسلات المركّبة والمفككة عند المقارنة، ويحتاج رمز الهروب \u{…} في PHP إلى نصوص بين علامتي تنصيص مزدوجتين.
ماذا يستطيع أصحاب متاجر Salla وZid أن يغيّروا؟
لا يستطيعون تغيير محرك المطابقة؛ فلا تتيح أي من المنصتين للتجار إعدادات المحلل في الوثائق التي قرأناها، فتبقى أدواتهم نص المنتج وشيفرة القالب وتطبيقات البحث والاختبار. وفي عيّنتنا طابقت Salla الأرقام في المتاجر الأربعة كلها وفرّقت الأزواج الحرفية، بينما طابقت Zid معظم الأزواج الحرفية وأخفقت مع الأرقام الهندية في المتجرين اللذين أمكن اختبارهما.
ما يستطيع أصحاب المتاجر ومطوّرو القوالب تغييره:
- أسماء المنتجات: ضع في اسم المنتج الكتابة التي يكتبها عملاؤك، والكتابة البديلة في الوصف. أربعة متاجر في عيّنتنا استعملت كتابات بديلة في كتالوجاتها نفسها، فابدأ بالبحث في كتالوجك بالصورتين.
- الوسوم: توفر واجهة Merchant API من Salla نقاط نهاية لوسوم المنتجات (Product Tags)، ولا تذكر الوثائق هل يقرأ بحث المتجر الوسوم أم لا، فضع على منتج واحد وسمًا بالكتابة البديلة وابحث عنه أولًا.
- شيفرة القالب على Salla: تتيح Twilight SDK الدالة salla.product.search، وهي التي يستعملها مكوّن البحث. يستطيع القالب تنظيف الاستعلام قبل إرساله، لكن ذلك لا ينفع إلا إذا كُتب نص الكتالوج بالطريقة نفسها.
- شيفرة القالب على Zid: استدعى مربع البحث الفوري في متاجر Zid التي اختبرناها واجهة منتجات من النطاق نفسه بالاستعلام الخام. ولو حُوّلت الأرقام الهندية إلى أرقام غربية في الاستعلام قبل ذلك الاستدعاء لتحوّلت حالتا النتائج الصفرية كلتاهما إلى مطابقات، لأن تلك الكتالوجات كتبت الأرقام بالأرقام الغربية.
- تطبيقات البحث: تَعِد تطبيقات بحث من جهات خارجية لمتاجر Salla وZid بمطابقة تراعي العربية. اختبر الأزواج الأربعة في فترة تجريبية أولًا.
ما لا يستطيعون تغييره: مقسّم الكلمات في المنصة وقواعد التوحيد والترتيب الافتراضي. ويغطي تدقيقنا لتحسين ظهور متاجر Salla وZid في محركات البحث الجانب القابل للزحف من المتاجر نفسها.
رأينا
تعامل مع توحيد الكتابة العربية على أنه خلل في صحة النتائج. صفحة بلا نتائج لمنتج متوفر عندك تُنهي البحث، ولا ينقذ أي تعديل في الترتيب منتجًا لم يطابقه المحرك قط. أصلح الأرقام أولًا لأنها سبب النتائج الصفرية، ثم الهمزة والتاء المربوطة، ثم اربط كل قاعدة عرض تسويقي بالاستعلام الموحّد.
الأرقام أرخص الإصلاحات. وتثبت واجهات Amazon أن المهمة كلها قابلة للحل في ثلاثة أسواق عربية معًا: طابقت 12 اختبارًا من 12. أما حالة البحث المستضاف فتكشف الفخ في الجهة الأخرى: كانت المطابقة موحّدة، لكن المنتجات المثبّتة رُبطت بكتابة واحدة، فرأى من كتب الكلمة بالهاء صفحة أولى مختلفة.
وحّد الكتابة مرة واحدة، في دالة واحدة، وطبّقها على طرفي البحث. وللإفراط في التوحيد ثمن: ردّ التاء المربوطة إلى هاء يدمج كلمات لا تختلف إلا في حرفها الأخير. ونقبل هذه المقايضة في البحث عن المنتجات، لأن فوات منتج متوفر أغلى من اتساع النتائج. أما القواميس فتحتاج إلى قواعد أشد. وأبعد التوحيد عن عناوين URL والنص المعروض، فمكانه الفهرس وحده. ويغطي دليلنا عن الروابط العربية (Slugs) جانب عناوين URL.
وحّد الكتابة مرة واحدة، في دالة واحدة، وطبّقها على طرفي البحث.
كيف أجرينا الفحص
بحثنا في 20 متجرًا يوم الخميس 8 أكتوبر 2026، بين الساعة 12:00 و12:50 تقريبًا بتوقيت القاهرة، على Chrome لسطح المكتب باتصال من القاهرة، دون تسجيل دخول، ولم نضف شيئًا إلى أي سلة. أجرينا في كل متجر جولة واحدة من ثمانية استعلامات على الأقل مع استعلام ضابط مكرر، فقسنا التذبذب بين التشغيلات، لكننا لم نكرر الاختبار في يوم آخر.
- العيّنة: 12 متجرًا سعوديًا و3 إماراتية و5 مصرية، منها 4 متاجر على Salla و3 على Zid عرفناها من شيفرة صفحاتها. وحجبَنا متجرٌ كويتي بصفحة «رفض الوصول» فلم نحتسبه. وتُحتسب Amazon والسوق الإقليمي مرة لكل واجهة دولة.
- قراءة النتائج: من رابط البحث الخاص بالمتجر أو نقطة نهاية البحث فيه، مستدعاةً من نطاق المتجر نفسه، أو من صفحة النتائج التي تظهر بعد الكتابة في مربع البحث.
- التقييم: «متطابقة» تعني أن الأعداد تقاربت في حدود 1%، وأن 8 على الأقل من أول 10 منتجات للكتابة الأولى ظهرت في الصفحة الأولى للكتابة البديلة. واستبعدنا الإعلانات المموّلة في Amazon.
- الحدود: لحظة زمنية واحدة؛ وأعداد الصفحة الأولى حين لا يعرض المتجر إجماليًا؛ وأعداد Salla محدودة بـ150؛ وقسنا متجر إلكترونيات سعوديًا واحدًا بقائمته المنسدلة ذات المنتجات الستة لأن مربع البحث فيه لا يفتح صفحة نتائج؛ ولا بيانات ميدانية عن عدد مرات كتابة المتسوقين لكل صورة.
الأسئلة الشائعة
لماذا لا يعرض بحث متجري شيئًا لمنتج متوفر عندنا؟
افحص الكتابات البديلة أولًا: قد تصل كتابتان صحيحتان للكلمة نفسها إلى منتجات مختلفة. في اختبارنا لعشرين متجرًا عربيًا يوم 8 أكتوبر 2026، لم تُعِد 3 متاجر أي منتج لرقم مكتوب بالأرقام الهندية، وأعاد متجر مصري 7 منتجات بدل 42 حين كُتبت الكلمة بالهمزة. اختبر أربعة أزواج في مربع البحث عندك.
هل يُضعف توحيد الكتابة العربية دقة نتائج البحث؟
إنه يوسّع النتائج. فردّ صور الهمزة والمد إلى الألف المجردة والتاء المربوطة إلى هاء يدمج كلمات لا تختلف إلا في هذه الحروف، فتكبر مجموعات النتائج. ونقبل هذه المقايضة في البحث عن المنتجات، لأن المنتج الذي لا يظهر في النتائج لا يُشترى. أما القواميس والبحث في النصوص الدينية فتحتاج إلى قواعد أشد.
هل أستطيع إصلاح البحث العربي على Salla أو Zid بلا مطوّر؟
جزئيًا. لا تستطيع تغيير قواعد المطابقة في المنصة، لكنك تستطيع كتابة أسماء المنتجات بالصورة التي يكتبها العملاء، وإضافة الصورة البديلة إلى الأوصاف، وتجربة تطبيق بحث في فترة تجريبية. في اختبارنا تعاملت Salla مع الأرقام في المتاجر الأربعة كلها، بينما أخفق متجرا Zid اللذان اختبرنا فيهما الأرقام مع الأرقام الهندية.
هل تهم الأرقام الهندية إن كان كتالوجنا يستعمل الأرقام الغربية؟
نعم. يبدأ الاختلاف في الاستعلام، فلا يمنعه كتالوج نظيف. وتذكر وثيقة متطلبات تخطيط النصوص العربية من W3C أن الأرقام الهندية مستعملة في مصر والسعودية. وفي اختبارنا فقدت 5 متاجر من 19 نتائجها أو تغيّرت حين كتب المتسوق الرقم نفسه بالأرقام الهندية، منها 3 لم تعرض شيئًا.
كيف أختبر البحث العربي في متجري؟
اختر أربع كلمات منتجات من كتالوجك: واحدة فيها همزة على الألف، وواحدة تنتهي بتاء مربوطة، وواحدة فيها ألف ممدودة، وواحدة فيها رقم. ابحث عن كل كلمة بالطريقتين، وعُدّ النتائج، وقارن أول عشرة منتجات. وأي فجوة تعني أن الفهرس والاستعلام موحّدان بطريقتين مختلفتين.
خير من سؤال «هل يدعم محركنا العربية؟» اختبار بسيط: هل تصل كتابتان للكلمة نفسها إلى المنتجات نفسها؟ إن كانت منظومتك Elasticsearch أو OpenSearch أو Algolia أو شيفرتك الخاصة، فأضف التوحيد السابق إلى الفهرس والاستعلام، ثم أعد اختبار الأزواج الأربعة. وإن كنت على Salla أو Zid فأصلح إملاء الكتالوج أولًا واختبر الأرقام قبل أي شيء آخر. أما بطء صفحات النتائج فإصلاح مستقل تناولناه في دراستنا لمؤشرات Core Web Vitals في المواقع العربية. وإن أردت أن تظهر صفحات منتجاتك في جوجل كما تظهر في مربع البحث عندك، ساعدوني في ترتيب صفحات منتجاتي العربية.
اقرأ أيضًا
كل مقالات القسم
Core Web Vitals في المواقع العربية: بيانات مستخدمين حقيقيين لـ45 علامة تجارية

البيانات المهيكلة في المواقع العربية: ما الذي ترمّزه 28 صفحة رئيسية لعلامات تجارية عربية

RTL في قوالب ووردبريس: كيف تتعامل 10 قوالب شائعة مع التخطيط العربي

روابط الصفحات العربية: عربية مُرمّزة أم حروف لاتينية أم إنجليزية؟ ماذا تستخدم 24 موقعًا عربيًا
