التجارب الفورية

تتمثل التجارب الفورية في ملء الشاشة ووجهة الإعلانات ما بعد النقر التي يتم تحميلها بشكل فوري تقريبًا من الإعلانات الموجودة في الموجز.

في حالة ظهور أي عمليات ذِكر للوحة canvas في API، فهذه إشارة إلى وجود تجارب فورية. كانت اللوحة هي الاسم السابق لهذا التنسيق.

قبل البدء

لإنشاء التجارب الفورية وإدارتها، تحتاج إلى ما يلي:

التقييدات

  • يمكنك تحديث التجارب الفورية التي لم يتم نشرها فقط.
  • API التجارب الفورية متوفرة على Instagram بشكل محدود.
  • علمًا بأن الإعلانات التي تستخدم التجارب الفورية غير مدعومة لدى Facebook Stories.

الإنشاء

لإنشاء تجربة فورية، ستحتاج إلى معرف صفحة فيسبوك (PAGE-ID) وأي عناصر، مثل الصور والأزرار والنصوص التي تريد تضمينها في تجربتك.

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$params = array(
  'background_color' => 'FFFFFF',
  'body_element_ids' => array(<CANVAS_PHOTO_ID>),
  'is_hidden' => false,
  'is_published' => false,
  'name' => 'Canvas Name',
);

$data = Api::instance()->call(
  '/' . <PAGE_ID> . '/canvases',
  RequestInterface::METHOD_POST,
  $params)->getContent();
curl \
  -F 'background_color=FFFFFF' \
  -F 'body_element_ids=["<CANVAS_PHOTO_ID>"]' \
  -F 'is_hidden=' \
  -F 'is_published=' \
  -F 'name=Canvas Name' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<PAGE_ID>/canvases

العناصر

الاسمالوصف

الزر

يمثل زرًا ضمن التجربة الفورية. يكون الحقل button_style مطلوبًا.

الإعلان الدوّار

يمثل إعلانًا دوّارًا للتجربة الفورية.

التذييل

يمثل تذييلاً للتجربة الفورية.

العنوان

يمثل عنوانًا للتجربة الفورية.

الصورة

يمثل صورة ضمن التجربة الفورية. يجب توفير PHOTO-ID للصورة التي تم تحميلها في صفحة فيسبوك.

قائمة المنتجات

يمثل قائمة المنتجات للتجربة الفورية.

مجموعة المنتجات

يمثل مجموعة المنتجات من كتالوج منتجات إعلانات كتالوج Advantage+ المعروضة في التجربة الفورية.

محدد مواقع المتاجر

محدد مواقع المتاجر الموجود ضمن تجربة فورية.

النص

النص ونمط النص المعروض ضمن تجربة فورية.

الفيديو

الفيديو المعروض ضمن تجربة فورية. يجب توفير VIDEO-ID للفيديو الذي تم تحميله في صفحة فيسبوك.

حذف عنصر

لحذف عنصر ما، أرسل طلب DELETE مع معرف العنصر الذي تريد حذفه.

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$data = Api::instance()->call(
  '/' . <CANVAS_ELEMENT_ID>,
  RequestInterface::METHOD_DELETE,
  array())->getContent();
curl -X DELETE \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<CANVAS_ELEMENT_ID>

الحصول على تجارب فورية موجودة

للحصول على معلومات بشأن أي تجربة فورية موجودة، ستحتاج إلى معرف التجربة الفورية (CANVAS-ID).

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$params = array(
  'fields' => array(
    'body_elements',
    'canvas_link',
    'id',
    'is_hidden',
    'is_published',
    'name',
  ),
);

$data = Api::instance()->call(
  '/' . <CANVAS_ID>,
  RequestInterface::METHOD_GET,
  $params)->getContent();
curl -G \
  --data-urlencode 'fields=[ 
    "body_elements", 
    "canvas_link", 
    "id", 
    "is_hidden", 
    "is_published", 
    "name" 
  ]' \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<CANVAS_ID>

الحصول على كل التجارب الفورية لأي صفحة

للحصول على معلومات حول كل التجارب الفورية الموجودة لصفحة فيسبوك، ستحتاج إلى معرف الصفحة (PAGE-ID).

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$params = array(
  'fields' => array(
    'background_color',
    'body_elements',
    'canvas_link',
    'id',
    'is_hidden',
    'is_published',
    'last_editor',
    'name',
    'owner',
    'update_time',
  ),
);

$data = Api::instance()->call(
  '/' . <PAGE_ID> . '/canvases',
  RequestInterface::METHOD_GET,
  $params)->getContent();
curl -G \
  --data-urlencode 'fields=[ 
    "background_color", 
    "body_elements", 
    "canvas_link", 
    "id", 
    "is_hidden", 
    "is_published", 
    "last_editor", 
    "name", 
    "owner", 
    "update_time" 
  ]' \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<PAGE_ID>/canvases

تحديث تجربة فورية

لتحديث تجربة فورية، يجب إلغاء نشر التجربة وستحتاج إلى معرف التجربة الفورية (CANVAS-ID) وأي معرفات عناصر تريد تحديثها.

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$params = array(
  'background_color' => 'FFFFFF',
  'body_element_ids' => array(<CANVAS_PHOTO_ID>),
  'is_hidden' => false,
  'is_published' => false,
  'name' => 'Canvas Name',
);

$data = Api::instance()->call(
  '/' . <CANVAS_ID>,
  RequestInterface::METHOD_POST,
  $params)->getContent();
curl \
  -F 'background_color=FFFFFF' \
  -F 'body_element_ids=["<CANVAS_PHOTO_ID>"]' \
  -F 'is_hidden=' \
  -F 'is_published=' \
  -F 'name=Canvas Name' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<CANVAS_ID>

استخدام قالب

استخدم قالبًا كطريقة سريعة لإنشاء تجربة فورية خاصة بتحقيق هدف معين لنشاط تجاري. لا يتغير التخطيط من قالب لآخر، ولكن يمكنك استبدال المحتوى الافتراضي بصور ومقاطع فيديو ومنتجات ونصوص وروابط خاصة بك.

اسم قالب APIمعرف القالبالوصف

الحصول على عملاء جدد

133471657203838

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

عرض نشاطك التجاري

1063217037112304

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

بيع المنتجات (بدون كتالوج)

424787857903852

أنشئ تجربة التسوق عبر الهاتف المحمول عن طريق تحميل معلومات حول منتجك بدلاً من استخدام الكتالوج. قالب بيع المنتجات (بدون كتالوج) في مدير الإعلانات.

بيع المنتجات: تخطيط نمط الحياة

1369752616394017

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

بيع المنتجات: تخطيط الشبكة

1932289657009030

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

تجربة الواقع المعزَّز

قالب تجربة الواقع المعزَّز متوفر فقط عبر مدير الإعلانات.

الحصول على أنواع العناصر في القالب

الخطوة الأولى. الحصول على معلومات حول المستند في القالب

أرسل طلب GET لتحديد العناصر اللازمة لقالب محدد، مثل قالب الحصول على عملاء جدد في المثال التالي.

curl -i -X GET \
 "https://graph.facebook.com/VERSION/133471657203838?fields=document&access_token=ACCESS-TOKEN"

مثال على الاستجابة

{
  "document": {
    "name": "Get New Customers",
    "id": "397246414010297"
  },
  "id": "133471657203838"
}

الخطوة الثانية. الحصول على أنواع العناصر

استخدم معرف الحقل document للحصول على العناصر الخاصة المتوفرة للقالب المحدد.

curl -i -X GET \
 "https://graph.facebook.com/VERSION/397246414010297?fields=body_elements&access_token=ACCESS-TOKEN"

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

    {
  "body_elements": [
    {
      "name": "Cover Image or Video",
      "element_type": "PHOTO",
      "id": "397271930674412"
    },
    {
      "name": "Text",
      "element_type": "RICH_TEXT",
      "id": "397271920674413"
    },
    {
      "name": "Text",
      "element_type": "RICH_TEXT",
      "id": "397271910674414"
    },
    {
      "name": "Button",
      "element_type": "BUTTON",
      "id": "397271914007747"
    },
    {
      "name": "Carousel",
      "element_type": "CAROUSEL",
      "id": "397271940674411"
    },
    {
      "name": "Text",
      "element_type": "RICH_TEXT",
      "id": "397271917341080"
    },
    {
      "name": "Button",
      "element_type": "BUTTON",
      "id": "397271924007746"
    }
  ],
  "id": "397246414010297"
}

النشر

لنشر إعلان التجربة الفورية، أرسل طلب POST إلى معرف التجربة الفورية (CANVAS-ID) مع بتعيين الحقل is_published على true.

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$params = array(
  'is_published' => true,
);

$data = Api::instance()->call(
  '/' . <CANVAS_ID>,
  RequestInterface::METHOD_POST,
  $params)->getContent();
curl \
  -F 'is_published=1' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<CANVAS_ID>

إنشاء تصميم إعلان

أنشئ تصميم إعلان باستخدام رابط التجربة الفورية الحالية (CANVAS-LINK).

curl -X POST \ -F 'image_hash="<IMAGE_HASH>"' \ -F 'object_story_spec={ "page_id": "<PAGE_ID>", "link_data": { "image_hash": "<IMAGE_HASH>", "link": "<CANVAS_LINK>", "name": "Creative message", "call_to_action": { "type": "LEARN_MORE" } } }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v19.0/act_<AD_ACCOUNT_ID>/adcreatives
'use strict'; const bizSdk = require('facebook-nodejs-business-sdk'); const AdAccount = bizSdk.AdAccount; const AdCreative = bizSdk.AdCreative; const access_token = '<ACCESS_TOKEN>'; const app_secret = '<APP_SECRET>'; const app_id = '<APP_ID>'; const id = '<AD_ACCOUNT_ID>'; const api = bizSdk.FacebookAdsApi.init(access_token); const showDebugingInfo = true; // Setting this to true shows more debugging info. if (showDebugingInfo) { api.setDebug(true); } const logApiCallResult = (apiCallName, data) => { console.log(apiCallName); if (showDebugingInfo) { console.log('Data:' + JSON.stringify(data)); } }; let fields, params; fields = [ ]; params = { 'image_hash' : '<imageHash>', 'object_story_spec' : {'page_id':'<pageID>','link_data':{'image_hash':'<imageHash>','link':'<canvasURI>','name':'Creative message','call_to_action':{'type':'LEARN_MORE'}}}, }; const adcreatives = (new AdAccount(id)).createAdCreative( fields, params ); logApiCallResult('adcreatives api call complete.', adcreatives);
require __DIR__ . '/vendor/autoload.php'; use FacebookAds\Object\AdAccount; use FacebookAds\Object\AdCreative; use FacebookAds\Api; use FacebookAds\Logger\CurlLogger; $access_token = '<ACCESS_TOKEN>'; $app_secret = '<APP_SECRET>'; $app_id = '<APP_ID>'; $id = '<AD_ACCOUNT_ID>'; $api = Api::init($app_id, $app_secret, $access_token); $api->setLogger(new CurlLogger()); $fields = array( ); $params = array( 'image_hash' => '<imageHash>', 'object_story_spec' => array('page_id' => '<pageID>','link_data' => array('image_hash' => '<imageHash>','link' => '<canvasURI>','name' => 'Creative message','call_to_action' => array('type' => 'LEARN_MORE'))), ); echo json_encode((new AdAccount($id))->createAdCreative( $fields, $params )->exportAllData(), JSON_PRETTY_PRINT);
from facebook_business.adobjects.adaccount import AdAccount from facebook_business.adobjects.adcreative import AdCreative from facebook_business.api import FacebookAdsApi access_token = '<ACCESS_TOKEN>' app_secret = '<APP_SECRET>' app_id = '<APP_ID>' id = '<AD_ACCOUNT_ID>' FacebookAdsApi.init(access_token=access_token) fields = [ ] params = { 'image_hash': '<imageHash>', 'object_story_spec': {'page_id':'<pageID>','link_data':{'image_hash':'<imageHash>','link':'<canvasURI>','name':'Creative message','call_to_action':{'type':'LEARN_MORE'}}}, } print AdAccount(id).create_ad_creative( fields=fields, params=params, )
import com.facebook.ads.sdk.*; import java.io.File; import java.util.Arrays; public class SAMPLE_CODE_EXAMPLE { public static void main (String args[]) throws APIException { String access_token = \"<ACCESS_TOKEN>\"; String app_secret = \"<APP_SECRET>\"; String app_id = \"<APP_ID>\"; String id = \"<AD_ACCOUNT_ID>\"; APIContext context = new APIContext(access_token).enableDebug(true); new AdAccount(id, context).createAdCreative() .setImageHash(\"<imageHash>\") .setObjectStorySpec( new AdCreativeObjectStorySpec() .setFieldLinkData( new AdCreativeLinkData() .setFieldCallToAction( new AdCreativeLinkDataCallToAction() .setFieldType(AdCreativeLinkDataCallToAction.EnumType.VALUE_LEARN_MORE) ) .setFieldImageHash(\"<imageHash>\") .setFieldLink(\"<canvasURI>\") .setFieldName(\"Creative message\") ) .setFieldPageId(\"<pageID>\") ) .execute(); } }
require 'facebook_ads' access_token = '<ACCESS_TOKEN>' app_secret = '<APP_SECRET>' app_id = '<APP_ID>' id = '<AD_ACCOUNT_ID>' FacebookAds.configure do |config| config.access_token = access_token config.app_secret = app_secret end ad_account = FacebookAds::AdAccount.get(id) adcreatives = ad_account.adcreatives.create({ image_hash: '<imageHash>', object_story_spec: {'page_id':'<pageID>','link_data':{'image_hash':'<imageHash>','link':'<canvasURI>','name':'Creative message','call_to_action':{'type':'LEARN_MORE'}}}, })

بمجرد أن يكون تصميم الإعلان جاهزًا، يمكنك الانتقال إلى إنشاء مجموعة الإعلانات والمجموعة الإعلانية والحملة الإعلانية.

مربع حوار إعلانات التجارب الفورية

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

لإعداد مجموعة Facebook SDK للغة JavaScript، راجع:

تعتمد مجموعة SDK للغة JavaScript على أذونات المستخدم الذي سجّل الدخول لإنشاء تجارب فورية. إذا لم تتوفر لدى المستخدم الأذونات اللازمة لإنشاء تجربة فورية للصفحة والنشاط التجاري المتوفر، فسيعرض مربع الحوار رسالة تفيد بوجود خطأ. لضمان أنه لا توجد أي أخطاء، يجب أن يكون المستخدم مرتبطًا بالنشاط التجاري وتتوفر لديها أذونات "إنشاء الإعلانات" في الصفحة.

بعد ذلك، قم بتشغيل مربع الحوار:

FB.ui({         
  display: 'popup',
  method: 'instant_experiences_builder',
  business_id: '<BUSINESS_ID>',
  page_id: '<PAGE_ID>'
}, function(response) {
  // callback
});

يمكنك توفير الإعدادات التالية للمكون الإضافي:

الاسممطلوبالوصف

display

نعم

المعلمة المطلوبة مع تعيين القيمة على popup

method

نعم

المعلمة المطلوبة مع تعيين القيمة على instant_experiences_builder

business_id

نعم

معرف النشاط التجاري

page_id

نعم

معرف الصفحة التي تريد ربط التجربة الفورية بها

canvas_id

لا

معرف التجربة الفورية التي تريد تعديلها

تكون المعلمة canvas_id اختيارية وتسمح للمستخدم بتعديل تجربة فورية موجودة أو معاينتها. في حالة اكتمال التجربة الفورية، لا يمكنك تعديلها. نوصي باستخدام مربع حوار معاينة التجارب الفورية لمعاينة التجربة الفورية.

عند نجاح العملية، يوفر المكون الإضافي الاستجابة التالية:

{
  "success": true,
  "id": "CANVAS-ID"
}

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

معاينة التجربة الفورية

API معاينة Iframe

يمكنك إنشاء معاينة تجربة فورية عن طريق استدعاء API المعاينات التي ترجع iframe، على غرار API معاينات الإعلانات:

curl -X GET \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v18.0/<CANVAS_ID>/preview

ترجع API استجابة مشابهة، والتي يمكن عرضها عن طريق تضمين عنصر iframe الذي تم إرجاعه في HTML:

{
"data": [
    {
      "body": "<iframe src=\"https://www.facebook.com/ads/canvas/preview?d=AQKELApdJxoVp2f3PHl8-pRtYuAh4-_eDupMDbh-pS9zde_EFxckhYQCXu7NYUi4PhhBA7uskIo2Ys3IjIVNGZiS&t=AQKGOPqGI-NWcv1YKbA\" width=\"405\" height=\"720\" scrolling=\"yes\" style=\"border: none;\"></iframe>"
    }
  ],
  "__www_request_id__": "AQnyr47Qp2r5M-ISqSiMgrw"
}

مجموعة Facebook SDK

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

لإعداد مجموعة Facebook SDK للغة JavaScript، راجع:

تعتمد مجموعة SDK للغة JavaScript على أذونات المستخدم الذي سجّل الدخول لإنشاء تجربة فورية. إذا لم تتوفر لدى المستخدم الأذونات اللازمة لعرض التجربة الفورية، فسيعرض مربع الحوار رسالة تفيد بوجود خطأ.

بعد ذلك، قم بتشغيل مربع حوار المعاينة:

FB.ui({         
  display: 'popup',
  method: 'instant_experiences_preview',
  canvas_id: 'CANVAS-ID'
});

يمكنك توفير الإعدادات التالية للمكون الإضافي:

الاسممطلوبالوصف

display

نعم

المعلمة المطلوبة مع تعيين القيمة على popup

method

نعم

المعلمة المطلوبة مع تعيين القيمة على instant_experiences_builder

canvas_id

نعم

معرف التجربة الفورية التي تريد معاينتها

إنشاء جماهير للتجارب الفورية

لإنشاء جمهور التفاعل وهو جمهور من الأشخاص الذين يتفاعلون مع التجربة الفورية، قم بتعيين المعلمة object_id الخاصة بالحقل rule على معرف التجربة الفورية (CANVAS-ID) في استدعاء POST /act_AD-ACCOUNT/customaudiences.

الأشخاص الذين فتحوا التجربة الفورية

curl \
  -F 'name=Instant Experience Engagement Audience' \
  -F 'description=People who opened this Instant Experience' \
  -F 'rule=[{"object_id":"<CANVAS_ID>","event_name":"instant_shopping_document_open"}]' \
  -F 'access_token=<ACCESS_TOKEN>' \  
https://graph.facebook.com/<VERSION>/act_<AD_ACCOUNT_ID>/customaudiences

الأشخاص الذين نقروا على أي روابط في التجربة الفورية

curl \
  -F 'name=Instant Experience Engagement Audience' \
  -F 'description=People who clicked any links in this Instant Experience' \
  -F 'rule=[{"object_id":"<CANVAS_ID>","event_name":"instant_shopping_element_click"}]' \
  -F 'access_token=<ACCESS_TOKEN>' \  
https://graph.facebook.com/<VERSION>/act_<AD_ACCOUNT_ID>/customaudiences

لمزيد من المعلومات حول الجماهير المخصصة، يمكنك الرجوع إلى الجمهور المخصص، المرجع.

إعلانات التجارب الفورية وInstagram

يستخدم تنفيذ التجارب الفورية من خلال Instagram استدعاءات API نفسها التي تستخدمها للتجربة الفورية على فيسبوك. لاحظ أنه يتم تطبيق تقييدات عند استخدام Instagram والتجارب الفورية:

  • المواضع - متوفرة لموجز Instagram وInstagram Stories. إذا حددت Instagram Stories، فيجب تحديد ذلك كموضع إعلاناتك الحصري.
  • عناصر التجربة الفورية - تدعم العناوين ومجموعات المنتجات بالكامل.

ندعم جزئيًا عناصر التجربة الفورية التالية على Instagram:

  • التذييل - لا يتم عرض swipe to open، حيث يظهر في الأجهزة العميلة باسم Tap to open.
  • الإعلان الدوّار - لا توجد صور ترتبط بتجربة فورية أخرى؛ وتظهر في الأجهزة العميلة كرابط لا يمكن النقر عليه. بالنسبة إلى الصور ومقاطع الفيديو، لا تتناسب مع الارتفاع، ولا تتناسب مع العرض أو الإمالة للتحريك؛ ويتم عرض الصور والفيديوهات لتناسب عرض الشاشة.
  • الزر - لا يمكن الربط بتجربة فورية أخرى أو بمتجر App Store.
  • النص - لا يتم دعم اللغات من اليمين إلى اليسار.
  • الفيديو - لا يتم دعم مقاطع الفيديو بتقنية 360 درجة.
  • محددات مواقع المتاجر - غير مدعومة.

رؤى الإعلانات

راجع رؤى الإعلانات للاطلاع على نظرة عامة حول أدوات القياس المتوفرة وأوصافها.

راجع أيضًا