تتبع التحويل

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

توجد ثلاث طرق لتتبع التحويلات من خلال البيكسل:

  • الأحداث القياسية هي الإجراءات التي يتخذها الزائر والتي نقوم بتعريفها وتبلّغ عنها من خلال استدعاء وظيفة بيكسل
  • الأحداث المخصصة هي الإجراءات التي يتخذها الزائر والتي تقوم بتعريفها وتبلّغ عنها من خلال استدعاء وظيفة بيكسل
  • التحويلات المخصصة هي الإجراءات التي يتخذها الزائر ويتم تتبعها تلقائيًا من خلال تحليل عناوين URL الخاصة بمسؤول الإحالات في موقعك على الويب

المتطلبات

يجب أن يكون الرمز البرمجي الأساسي للبيكسل مثبّتًا بالفعل في كل صفحة حيث تريد تتبع التحويلات.

الأحداث القياسية

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

للحصول على قائمة كاملة تضم الأحداث القياسية، تفضل بزيارة مرجع الأحداث القياسية للبيكسل. تعرف على المزيد حول الأحداث القياسية من خلال Blueprint.

تتبع الأحداث القياسية

يتم تتبع كل الأحداث القياسية من خلال استدعاء الوظيفة fbq('track') في بيكسل باسم الحدث وكائن JSON (اختياريًا) باعتبارها معلماتها. فعلي سبيل المثال، ها هو استدعاء وظيفة لتتبع موعد قيام الزائر بإنهاء حدث شراء مع تضمين العملة والقيمة باعتبارها معلمة:

fbq('track', 'Purchase', {currency: "USD", value: 30.00});

وفي حالة استدعاء هذه الوظيفة، قد يتم استدعاؤها باعتبارها حدث شراء في مدير الأحداث:

يمكنك استدعاء الوظيفة fbq('track') من أي مكان بين علامات <body> للفتح والإغلاق في صفحتك على الويب، إما عند تحميل الصفحة أو عند قيام زائر بإكمال إجراء مثل النقر على زر.

فعلى سبيل المثال، إذا كنت تريد تتبع حدث شراء قياسي بعد قيام زائر بإكمال عملية الشراء، يمكنك استدعاء الوظيفة fbq('track') من صفحة تأكيد الشراء لديك كما يلي:

<body>
  ...
  <script>
    fbq('track', 'Purchase', {currency: "USD", value: 30.00});
  </script>
  ...
</body>

إذا كنت تريد بدلاً من ذلك تتبع حدث شراء قياسي عندما ينقر الزائر على زر الشراء، فيمكنك ربط استدعاء الوظيفة fbq('track') بزر الشراء من صفحة إتمام الشراء الخاصة بك، مثل ما يلي:

<button id="addToCartButton">Purchase</button>
<script type="text/javascript">
  $('#addToCartButton').click(function() {
    fbq('track', 'Purchase', {currency: "USD", value: 30.00});
  });
</script>

لاحظ أنه في المثال السابق يتم استخدام الأسلوب jQuery لتشغيل استدعاء الوظيفة، ولكن يمكنك تشغيل استدعاء الوظيفة باستخدام أي أسلوب تريده.

الأحداث المخصصة

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

تعرف على المزيد حول الأحداث المخصصة من خلال Blueprint.

تتبع الأحداث المخصصة

يمكنك تتبع الأحداث المخصصة من خلال استدعاء الوظيفة fbq('trackCustom') في البيكسل، باسم الحدث المخصص لديك، وكائن JSON (اختياريًا) باعتبارهما معلماتها. يمكنك استدعاء الوظيفة fbq('trackCustom') مثل الأحداث القياسية من أي مكان بين إشارات <body> للفتح والإغلاق في صفحتك على الويب، إما عند تحميل الصفحة أو عند قيام زائر بإجراء مثل النقر على زر.

فعلى سبيل المثال، لنفترض أنك أردت تتبع زوار يشاركون عرضًا للحصول على خصم. يمكنك تتبعهم باستخدام حدث مخصص، مثل ما يلي:

fbq('trackCustom', 'ShareDiscount', {promotion: 'share_discount_10%'});

يجب أن تكون أسماء الأحداث المخصصة عبارة عن سلاسل، ولا يمكن أن يتجاوز طولها 50 حرفًا.

التحويلات المخصصة

في كل مرة يتم خلالها تحميل البيكسل، فإنه يستدعي fbq('track', 'PageView') لتتبع حدث قياسي في PageView. تسجل الأحداث القياسية في PageView عنوان URL الخاص بمسؤول الإحالات للصفحة التي قامت بتشغيل استدعاء الوظيفة. ويمكنك استخدام عناوين URL المسجّلة هذه في مدير الأحداث لتعريف إجراءات الزائر التي يجب تتبعها.

فعلى سبيل المثال، لنفترض أنك ترسل زوارًا مشتركين في قائمة البريد الخاصة بك إلى صفحة "شكرًا لك". يمكنك إعداد تحويل مخصص يتتبع زوار موقع الويب الذين يعرضون أية صفحة تتضمن /thank-you في عنوان URL الخاص بها. ولنفترض أن الصفحة "شكرًا لك" لديك هي الصفحة الوحيدة التي تتضمن /thank-you في عنوان URL الخاص بها فقط وقمت بتثبيت البيكسل في هذه الصفحة، من ثمّ سيتم تتبع أي شخص يعرضها باستخدام هذا التحويل المخصص.

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

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

إنشاء التحويلات المخصصة

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

التحويلات المخصصة القائمة على القواعد

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

  1. قم بإنشاء تحويل مخصص في /{AD_ACCOUNT_ID}/customconversions.
  2. حدد عنوان URL أو عنوان URL جزئيًا، يمثل أحد الأحداث في pixel_rule. على سبيل المثال، thankyou.html هي صفحة تظهر بعد الشراء.

يسجّل ذلك تحويل PURCHASE عندما يظهر 'thankyou.html':

use FacebookAds\Object\CustomConversion;
use FacebookAds\Object\Fields\CustomConversionFields;

$custom_conversion = new CustomConversion(null, 'act_<AD_ACCOUNT_ID>');
$custom_conversion->setData(array(
  CustomConversionFields::NAME => 'Example Custom conversion',
  CustomConversionFields::PIXEL_ID => <PIXEL_ID>,
  CustomConversionFields::PIXEL_RULE => array(
    'url' => array('i_contains' => 'thank-you.html'),
  ),
  CustomConversionFields::CUSTOM_EVENT_TYPE => 'PURCHASE',
));
$custom_conversion->create();
from facebookads.adobjects.customconversion import CustomConversion

    custom_conversion = CustomConversion(parent_id='act_<AD_ACCOUNT_ID>')
    custom_conversion.update({
        CustomConversion.Field.name: 'Example Custom Conversion',
        CustomConversion.Field.pixel_id: <PIXEL_ID>,
        CustomConversion.Field.pixel_rule: {
            'url': {'i_contains': 'thankyou.html'},
        },
        CustomConversion.Field.custom_event_type: 'PURCHASE',
    })

    custom_conversion.remote_create()
curl \
  -F 'name=Example Custom conversion' \
  -F 'pixel_id=<PIXEL_ID>' \
  -F 'pixel_rule={"url":{"i_contains":"thank-you.html"}}' \
  -F 'custom_event_type=PURCHASE' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.8/act_<AD_ACCOUNT_ID>/customconversions

يمكنك بعد ذلك إنشاء حملتك الإعلانية باستخدام هدف CONVERSIONS.

على مستوى المجموعة الإعلانية، حدد نفس التحويل المخصص (pixel_id، pixel_rule، custom_event_type) في promoted_object.

رؤى التحويل المخصص

تقوم رؤى الإعلانات بإرجاع معلومات حول التحويلات المخصصة:

curl -i -G \
-d 'fields=actions,action_values' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.7/<AD_ID>/insights

يمكن إرجاع التحويلات القياسية والمخصصة:

{
  "data": [
    {
      "actions": [
        {
          "action_type": "offsite_conversion.custom.17067367629523",
          "value": 1225
        },
        {
          "action_type": "offsite_conversion.fb_pixel_purchase",
          "value": 205
        }
      ],
      "action_values": [
        {
          "action_type": "offsite_conversion.custom.1706736762929507",
          "value": 29390.89
        },
        {
          "action_type": "offsite_conversion.fb_pixel_purchase",
          "value": 29390.89
        }
      ],
      "date_start": "2016-07-28",
      "date_stop": "2016-08-26"
    }
  ],
  "paging": {
    "cursors": {
      "before": "MAZDZD",
      "after": "MjQZD"
    },
    "next": "https://graph.facebook.com/v2.7/<AD_ID>/insights?access_token=<ACCESS_TOKEN>&amp;pretty=0&amp;fields=actions%2Caction_values&amp;date_preset=last_30_days&amp;level=adset&amp;limit=25&amp;after=MjQZD"
  }
}

تتضمن التحويلات المخصصة معرفات فريدة؛ وبذلك يمكنك الاستعلام عن تحويل محدد، مثل تحويل قائم على قاعدة:

curl -i -G \
-d 'fields=name,pixel,pixel_aggregation_rule' \
-d 'access_token=ACCESS-TOKEN' \
https://graph.facebook.com/v2.7/<CUSTOM_CONVERSION_ID>

تقييدات على التحويلات المخصصة

الحد الأقصى لعدد التحويلات المخصصة لكل حساب إعلاني هو 100. إذا كنت تستخدم واجهة API رؤى الإعلانات للحصول على أدوات القياس الخاصة بالتحويلات المخصصة، فإن:

  • الحصول على تقسيمات معرفات المنتجات غير مدعوم.
  • الحصول على أعداد الإجراءات الفريدة غير مدعوم.

تتبع التحويلات خارج الموقع

يمكنك تتبع التحويلات خارج الموقع باستخدام وحدات بيكسل عن طريق إضافة الحقل fb_pixel إلى المعلمة tracking_spec لإعلانك. معرفة المزيد.

use FacebookAds\Object\Ad;
use FacebookAds\Object\Fields\AdFields;

$ad = new Ad(null, 'act_<AD_ACCOUNT_ID>');
$ad->setData(array(
  AdFields::ADSET_ID => <AD_SET_ID>,
  AdFields::CREATIVE => array(
    'creative_id' => <CREATIVE_ID>,
  ),
  AdFields::NAME => 'Offsite Conversions Ad',
  AdFields::TRACKING_SPECS => array(array(
    'action.type' => 'offsite_conversion',
    'fb_pixel' => <PIXEL_ID>,
  )),
));

$ad->create();
from facebookads.adobjects.ad import Ad

ad = Ad(parent_id='act_<AD_ACCOUNT_ID>')
ad.update({
    Ad.Field.adset_id: <AD_SET_ID>,
    Ad.Field.name: 'Offsite Conversions Ad',
    Ad.Field.creative: {
        'creative_id': <CREATIVE_ID>,
    },
    Ad.Field.tracking_specs: [
        {
            'action.type': 'offsite_conversion',
            'fb_pixel': <PIXEL_ID>,
        },
    ],
})
ad.remote_create(params={
    'status': Ad.Status.paused,
})
Ad ad = new AdAccount(act_<AD_ACCOUNT_ID>, context).createAd()
  .setAdsetId(<AD_SET_ID>)
  .setCreative(
    new AdCreative()
      .setFieldId(<CREATIVE_ID>)
  )
  .setName("Offsite Conversions Ad")
  .setTrackingSpecs("{\"action.type\":\"offsite_conversion\",\"fb_pixel\":\"" + <PIXEL_ID> + "\"}")
  .execute();
String ad_id = ad.getId();
curl \
  -F 'adset_id=<AD_SET_ID>' \
  -F 'creative={"creative_id":"<CREATIVE_ID>"}' \
  -F 'name=Offsite Conversions Ad' \
  -F 'tracking_specs=[{"action.type":"offsite_conversion","fb_pixel":"<PIXEL_ID>"}]' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/act_<AD_ACCOUNT_ID>/ads

المعلمات

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

لتضمين كائن معلمة بحدث مخصص أو قياسي، قم بتنسيق بيانات المعلمة الخاصة بك باعتبارها كائنًا باستخدام JSON، ثم قم بتضمينها باعتبارها معلمة الوظيفة الثالثة عند استدعاء الوظيفتين fbq('track') أو fbq('trackCustom').

فعلى سبيل المثال، لنفترض أنك أردت تتبع زائر اشترى منتجات متعددة نتيجة ترويجك. يمكنك إجراء ما يلي:

fbq('track', 'Purchase',
  // begin parameter object data
  {
    value: 115.00,
    currency: 'USD',
    contents: [
      {
        id: '301',
        quantity: 1
      },
      {
        id: '401',
        quantity: 2
      }],
    content_type: 'product'
  }
  // end parameter object data
);

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

خصائص الكائنات

يمكنك تضمين خصائص الكائنات المحددة مسبقًا التالية وأي أحداث مخصصة وأي أحداث قياسية تدعمها. يمكنك تنسيق بيانات كائن المعلمة لديك باستخدام لغة JSON.

مفتاح الخاصيةنوع القيمةوصف المعلمة

content_category

string (سلسلة)

فئة الصفحة أو المنتج.

content_ids

مصفوفة الأعداد الصحيحة أو السلاسل

معرفات المنتجات المقترنة بالحدث، مثل وحدات حفظ المخزون (SKU). المثال: ['ABC123', 'XYZ789'].

content_name

string (سلسلة)

اسم الصفحة/المنتج.

content_type

string (سلسلة)

يمكن أن تكون بالقيمة product أو product_group بناءً على المعلمة content_ids أو contents التي يتم تمريرها. وإذا كانت المعرفات التي يتم تمريرها في المعلمة content_ids أو contents تمثل معرفات المنتجات، فمن ثمّ يجب أن تكون بالقيمة product. وفي حالة تمرير معرفات مجموعة المنتجات، من ثمّ يجب أن تكون بالقيمة product_group.

contents

مصفوفة الكائنات

مصفوفة بكائنات JSON تحتوي على الرقم الدولي للسلعة (EAN) إن وُجد أو معرف (معرفات) المنتجات أو المحتويات الأخرى المرتبطة بالحدث، بالإضافة إلى كميات المنتجات وأسعارها. مطلوب: id وquantity.

المثال: [{'id': 'ABC123', 'quantity': 2}, {'id': 'XYZ789', 'quantity': 2}]

currency

string (سلسلة)

عملة للقيمة value المحددة.

delivery_category

string (سلسلة)

فئة العرض. علمًا بأن القيم المدعومة هي:

  • in_store — يتطلب الشراء ذهاب العميل إلى المتجر.
  • curbside — يتطلب الشراء استلام المنتج من المتجر
  • home_delivery — يتم تسليم المنتج الذي تم شراؤه إلى العميل.

num_items

integer (عدد صحيح)

عدد العناصر عند بدء عملية إتمام الشراء. يتم استخدامه مع الحدث InitiateCheckout.

predicted_ltv

integer (عدد صحيح)، float (عدد عشري)

القيمة الدائمة المتوقعة للمشترك كما حددها المعلن وتم التعبير عنها على أنها قيمة دقيقة.

search_string

string (سلسلة)

السلسلة التي أدخلها المستخدم للبحث. يتم استخدامها مع الحدث Search.

status

Boolean (قيمة منطقية)

يتم استخدامها مع الحدث CompleteRegistration، لعرض حالة التسجيل.

value

integer (عدد صحيح) أو float (عدد عشري)

قيمة المستخدم الذي ينفذ هذا الحدث للنشاط التجاري.

الخصائص المخصصة

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

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

fbq('track', 'Purchase',
  // begin parameter object data
  {
    value: 115.00,
    currency: 'USD',
    contents: [
      {
        id: '301',
        quantity: 1
      },
      {
        id: '401',
        quantity: 2
      }],
    content_type: 'product',
    compared_product: 'recommended-banner-shoes',  // custom property
    delivery_category: 'in_store'
  }
  // end parameter object data
);

الخطوات التالية

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

معرفة المزيد

  • تعرف على المزيد حول تتبع التحويل في تدريب مباشر من خلال Blueprint.