# كيفية إعداد توصيات المنتجات في البريد الإلكتروني

يمكن أن يؤدي تعيين **المصدر** لكتلة المنتجات إلى **توصيات** إلى ترتيب المنتجات حسب **الأكثر مبيعًا**، **عادت إلى المخزون**، **انخفاض السعر**، **الوصول الجديد**، **تم شراؤها معًا**، أو **بناءً على ما شاهدوه**، دون أن تختار المنتجات أو تكتب قاعدة كتالوج. راجع [الحصول على المنتجات الموصى بها](/ar/product/content/email-content/drag-and-drop-email-editor/blocks/#get-recommended-products) لكل حقل يضيفه هذا المصدر. تحتاج ثلاث من هذه الاستراتيجيات إلى بيانات من خارج الكتالوج الخاص بك لتعمل: تقرأ **الأكثر مبيعًا** سجل طلباتك، وتقرأ **تم شراؤها معًا** و**بناءً على ما شاهدوه** ما نظر إليه المتسوقون واشتروه. يغطي هذا الدليل ما يجب إرساله حتى يكون لكل استراتيجية شيء لترتيبه.

<Aside type="tip">
هل ترسل بالفعل `PW_AbandonedCart` و `PW_OrderCreated` من أجل [استرداد سلة التسوق المهجورة](/ar/tutorials/product-guides/email-marketing-campaigns/how-to-set-up-an-abandoned-cart-campaign/)؟ استمر في القراءة. تحتاج **الأكثر مبيعًا** إلى حقل إضافي واحد في `PW_OrderCreated` لا يغطيه دليل سلة التسوق المهجورة.
</Aside>

## قبل أن تبدأ

تأكد من أن كتالوج حسابك يحتوي على منتجات. انتقل إلى **المحتوى ← كتالوج المنتجات** وقم بتوصيل موجز، أو استيراد ملف CSV، أو إضافة منتجات يدويًا. [تعرف على كيفية ملء الكتالوج الخاص بك](/ar/product/content/product-catalog/#ways-to-populate-your-catalog).

<Aside type="caution" icon="setting" title="مطلوب مساعدة المطور">
يتطلب إرسال الأحداث أدناه مساعدة فريق التطوير الخاص بك، ما لم يكن تكامل متجرك يرسلها بالفعل نيابة عنك. يرجى مشاركة هذا الدليل معهم.
</Aside>

<Aside type="note" title="الحسابات الجديدة ترى الكتالوج العادي أولاً">
تحتاج كل استراتيجية أدناه إلى تراكم السجل قبل أن تتمكن من ترتيب أي شيء. حتى ذلك الحين، تعرض الكتلة الكتالوج العادي بدلاً من ذلك. راجع الملاحظة تحت [الحصول على المنتجات الموصى بها](/ar/product/content/email-content/drag-and-drop-email-editor/blocks/#get-recommended-products).
</Aside>

## ما هي الاستراتيجيات التي تحتاج إلى أحداث

ثلاث من الاستراتيجيات الست ترتب المنتجات من الأحداث التي ترسلها؛ الثلاث الأخرى ترتب مباشرة من الكتالوج الخاص بك ولا تحتاج إلى أي شيء منك.

| الاستراتيجية | هل تحتاج إلى أحداث؟ | مصدر البيانات |
| :---- | :---- | :---- |
| **عادت إلى المخزون** | لا | تغييرات مخزون الكتالوج |
| **انخفاض السعر** | لا | تغييرات أسعار الكتالوج |
| **الوصول الجديد** | لا | تاريخ "الإضافة" في الكتالوج |
| **الأكثر مبيعًا** (7/30 يومًا) | نعم | `PW_OrderCreated` / `PW_OrderUpdated` مع `items` |
| **بناءً على ما شاهدوه** | نعم | أي حدث يحمل معرف منتج |
| **تم شراؤها معًا** | نعم | أي حدث يحمل معرف منتج، بالإضافة إلى علامة جهاز |

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

## الأكثر مبيعًا: أضف العناصر إلى أحداث طلبك

ترتب **الأكثر مبيعًا (7 أيام)** و**الأكثر مبيعًا (30 يومًا)** المنتجات حسب عدد الوحدات المباعة في تلك الفترة. تقرأ مصفوفة `items` في `PW_OrderCreated` و`PW_OrderUpdated`، وتحديدًا `productId` و`quantity` لكل عنصر.

إذا كنت ترسل بالفعل `PW_OrderCreated` لـ [مسح علامات سلة التسوق المهجورة](/ar/tutorials/product-guides/email-marketing-campaigns/how-to-set-up-an-abandoned-cart-campaign/#what-happens-when-you-send-pw_ordercreated)، فإن هذا الاستدعاء الأدنى (فقط `orderId`) لا يزال يمسح السلة، لكنه لا يعطي الأكثر مبيعًا شيئًا لعده. أضف بنود الطلب إلى نفس الاستدعاء:

```json
{
  "request": {
    "hwid": "8f65b16df378e7a6bece9614e1530fb2",
    "application": "XXXXX-XXXXX",
    "event": "PW_OrderCreated",
    "attributes": {
      "orderId": "ORDER-10293",
      "items": [
        {
          "productId": "SKU-4821",
          "quantity": 1
        },
        {
          "productId": "SKU-5190",
          "quantity": 2
        }
      ]
    },
    "userId": "shopper@example.com"
  }
}
```

يجب أن يتطابق `productId` مع المعرف الذي يستخدمه [كتالوج المنتجات](/ar/product/content/product-catalog/) الخاص بك لهذا العنصر، حتى يتمكن الأكثر مبيعًا من البحث عن المنتج لعرضه. يتم تجاهل حقول العناصر الإضافية (السعر، الاسم، وما إلى ذلك) لهذه الاستراتيجية. فقط `productId` و`quantity` يتم احتسابهما في الترتيب. أرسل نفس مصفوفة `items` في `PW_OrderUpdated` لتعديلات الطلبات، أو المبالغ المستردة، أو الإلغاءات الجزئية، حيث يعيد الأكثر مبيعًا العد من أي شيء يقوله أحدث حدث لهذا الطلب.

<Aside type="tip">
إذا كنت تستخدم [تكامل Shopify](/ar/product/integrations/shopify-integration/)، فإن `PW_OrderCreated` يحمل بالفعل `items` مع `productId` و`quantity` لكل طلب — لا يوجد شيء لإضافته من جانبك. ومع ذلك، لا يرسل التكامل `PW_OrderUpdated`، لذا فإن الأكثر مبيعًا يعد الطلبات كما تم تقديمها في الأصل ولا يطرح الوحدات من التعديلات اللاحقة أو المبالغ المستردة أو الإلغاءات.
</Aside>

<Aside type="caution" title="أرسل الكمية كرقم">
استخدم رقم JSON حقيقي لـ `quantity`، وليس سلسلة نصية مقتبسة. يخزن Pushwoosh كل قيمة سمة فقط في النوع الذي تم إعلانه أو استنتاجه به لأول مرة؛ يتم إسقاط القيمة غير المتطابقة بصمت، ولا يزال `postEvent` يعيد النجاح. راجع [استخدم أنواع السمات الصحيحة](/ar/tutorials/product-guides/email-marketing-campaigns/how-to-set-up-an-abandoned-cart-campaign/#create-the-events-in-your-control-panel) لنفس التحذير بشأن `PW_AbandonedCart`.
</Aside>

<Aside type="note">
ترتب **الأكثر مبيعًا** حسب سجل الطلبات على وجه التحديد. لا يتم احتساب المشاهدات ونشاط السلة. للحصول على ترتيب يتضمن التصفح ونشاط السلة أيضًا، استخدم **بناءً على ما شاهدوه** أو **تم شراؤها معًا** بدلاً من ذلك.
</Aside>

## بناءً على ما شاهدوه وتم شراؤها معًا: تتبع نشاط المنتج

تعتمد كلتا الاستراتيجيتين على نفس الإشارة: الأحداث التي تحمل معرف منتج. لا تحتاج إلى اسم حدث مخصص "تم عرض المنتج" — أي [حدث مخصص](/ar/product/audience-data-and-segmentation/events/custom-events/) يتم إرساله عبر [postEvent](/ar/developer/api-reference/user-centric-api/#postevent) يتم احتسابه، طالما أن `attributes` الخاصة به تتضمن أحد هذه المفاتيح:

* منتج واحد، كسمة على المستوى الأعلى: `product_id`، `productId`، `productid`، `item_id`، أو `sku`.
* منتجات متعددة، كمصفوفة `products` حيث يحتوي كل عنصر على `product_id`، `productId`، `id`، أو `sku`.

على سبيل المثال، قم بتشغيل حدث عرض المنتج الحالي الخاص بك مع سمة معرف المنتج الموجودة عليه بالفعل:

```json
{
  "request": {
    "hwid": "8f65b16df378e7a6bece9614e1530fb2",
    "application": "XXXXX-XXXXX",
    "event": "ProductViewed",
    "attributes": {
      "product_id": "SKU-4821",
      "category": "Audio"
    },
    "userId": "shopper@example.com"
  }
}
```

ترتب **بناءً على ما شاهدوه** المنتجات التي تفاعل معها كل متسوق مؤخرًا — لا يلزم إعداد إضافي بمجرد تدفق الأحداث المذكورة أعلاه.

<Aside type="tip">
إذا كنت تستخدم [تكامل Shopify](/ar/product/integrations/shopify-integration/)، فإن تضمين سمة واجهة المتجر يرسل بالفعل `PW_ProductViewed` مع `productId` في كل عرض لصفحة المنتج — لا يوجد شيء لإضافته من جانبك، طالما أن مفتاح **Push Init Embed** قيد التشغيل (يكون مغلقًا افتراضيًا). راجع [أحداث تصفح واجهة المتجر](/ar/product/integrations/shopify-integration/#storefront-browsing-events).
</Aside>

ترتب **تم شراؤها معًا** المنتجات التي يتم شراؤها بشكل متكرر إلى جانب منتج مرجعي واحد، عبر سجل حسابك بالكامل. تحتاج إلى شيء آخر: **علامة المنتج**، وهي [علامة جهاز](/ar/developer/api-reference/tags/) تحمل معرف المنتج المرجعي الحالي. قم بتعيين اسم الحقل عند تكوين الاستراتيجية في [كتلة المنتجات](/ar/product/content/email-content/drag-and-drop-email-editor/blocks/#get-recommended-products) (على سبيل المثال `PW_LastViewedProductID`)، ثم حافظ على تحديث هذه العلامة على كل جهاز. على سبيل المثال، [قم بتعيينها](/ar/developer/api-reference/tags/) إلى معرف المنتج كلما شاهد المتسوق منتجًا. بدون تعيين العلامة على مستلم، تعود الكتلة إلى الكتالوج العادي بالنسبة له.

<Aside type="caution" title="قواعد اسم العلامة">
يقبل اسم العلامة فقط الحروف والأرقام والشرطات السفلية والمسافات، حيث يجب أن يكون قابلاً للعنونة في Liquid. راجع [تحتاج "تم شراؤها معًا" إلى علامة منتج](/ar/product/content/email-content/drag-and-drop-email-editor/blocks/#get-recommended-products).
</Aside>

## تأكد من وصول أحداثك

قبل إضافة الكتلة، تحقق من أن Pushwoosh يتلقى بالفعل الأحداث المذكورة أعلاه: انتقل إلى **الجمهور ← الأحداث**، افتح الحدث الذي أرسلته (`PW_OrderCreated` أو الحدث المخصص الذي يحمل معرف منتج)، وتأكد من ظهور الزيارات الأخيرة. راجع [إحصائيات الأحداث](/ar/product/audience-data-and-segmentation/events/).

<Aside type="note">
يمكن أن تعني كتلة المنتجات الفارغة إما "لم تصل الأحداث أبدًا" أو "لم يتراكم سجل كافٍ بعد" (راجع الملاحظة أعلاه). تستبعد إحصائيات الأحداث السبب الأول قبل أن تلاحق الثاني.
</Aside>

## أضف الكتلة إلى بريدك الإلكتروني

أضف كتلة [المنتجات](/ar/product/content/email-content/drag-and-drop-email-editor/blocks/#products) إلى [محتوى بريدك الإلكتروني](/ar/product/content/email-content/drag-and-drop-email-editor/create-email-content-with-drag-and-drop-editor/)، قم بتعيين **المصدر** إلى **توصيات**، واختر **استراتيجية**. راجع [الحصول على المنتجات الموصى بها](/ar/product/content/email-content/drag-and-drop-email-editor/blocks/#get-recommended-products) لكل حقل في لوحة الإعدادات. انقر فوق **تحديث المعاينة** للتحقق من أن اللوحة تمتلئ بمنتجات حقيقية قبل الإرسال.