নেটিভ বিজ্ঞাপন

ভূমিকা

এই নির্দেশিকায় API-এর সাথে Google Ad Manager-এর নেটিভ বিজ্ঞাপন ফিচার কীভাবে ব্যবহার করতে হয় তা বিস্তারিতভাবে বর্ণনা করা হয়েছে। শুরু করার আগে, Ad Manager-এর সাথে নেটিভ বিজ্ঞাপন-এর প্রাথমিক বিষয়গুলি বুঝে নিন।

নেটিভ বিজ্ঞাপনের ফর্ম্যাট ফিরিয়ে আনা

Ad Manager API-তে নেটিভ বিজ্ঞাপনের ফর্ম্যাট CreativeTemplate দ্বারা দেখানো হয়। আপনার নেটওয়ার্ক থেকে নেটিভ ফর্ম্যাট ফিরিয়ে আনতে, CreativeTemplateService ব্যবহার করুন। ক্রিয়েটিভ টেমপ্লেট ও নেটিভ বিজ্ঞাপন ফর্ম্যাটের মধ্যে পার্থক্য করতে, isNativeEligible ফিল্ড ব্যবহার করুন। এই ফিল্ডটি সত্য হলে, ক্রিয়েটিভ টেমপ্লেটটি একটি নেটিভ বিজ্ঞাপন ফর্ম্যাটকে প্রতিনিধিত্ব করে।

Java

StatementBuilder statementBuilder = new StatementBuilder()
    .where("isNativeEligible = :isNativeEligible")
    .orderBy("id DESC")
    .limit(StatementBuilder.SUGGESTED_PAGE_LIMIT)
    .withBindVariableValue("isNativeEligible", true);;

CreativeTemplatePage page = creativeTemplateService.getCreativeTemplatesByStatement(
    statementBuilder.toStatement());

GitHub-এ দেখুন

Python

query = 'WHERE isNativeEligible = :isNativeEligible'
values = [
    {'key': 'isNativeEligible',
     'value': {
         'xsi_type': 'BooleanValue',
         'value': 'true'
     }},
]
statement = ad_manager.FilterStatement(query, values)

response = creative_template_service.getCreativeTemplatesByStatement(
    statement.ToStatement())

GitHub-এ দেখুন

PHP

$pageSize = StatementBuilder::SUGGESTED_PAGE_LIMIT;
$statementBuilder = (new StatementBuilder())
    ->where('isNativeEligible = :isNativeEligible')
    ->orderBy('id ASC')
    ->limit($pageSize)
    ->withBindVariableValue('isNativeEligible', true);

$page = $creativeTemplateService->getCreativeTemplatesByStatement(
    $statementBuilder->ToStatement());

GitHub-এ দেখুন

.NET

StatementBuilder statementBuilder = new StatementBuilder()
    .Where("isNativeEligible = :isNativeEligible")
    .OrderBy("id ASC")
    .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT)
    .AddValue("isNativeEligible", true);

CreativeTemplatePage page = creativeTemplateService.getCreativeTemplatesByStatement(
      statementBuilder.ToStatement());

GitHub-এ দেখুন

Ruby

query = 'WHERE isNativeEligible = :isNativeEligible'
values = [
  {
    :key => 'isNativeEligible',
    :value => {
      :xsi_type => 'BooleanValue',
      :value => 'true'
    }
  },
]
statement = AdManagerApi::FilterStatement.new(query, values)

page = creative_template_service.get_creative_templates_by_statement(
  statement.toStatement())

GitHub-এ দেখুন

নেটিভ ক্রিয়েটিভ তৈরি করা

Ad Manager API-তে নেটিভ ক্রিয়েটিভ TemplateCreatives দ্বারা সমর্থিত। তারা কোনও স্বতন্ত্র এন্টিটি নয়। নেটিভ ক্রিয়েটিভ তৈরি করতে, CreativeTemplate-এর জন্য TemplateCreative তৈরি করুন যা নেটিভের জন্য উপযুক্ত। নেটিভ ক্রিয়েটিভের কম্পোনেন্টগুলি CreativeTemplateVariable অবজেক্টে স্টোর করা হয়।

নেটিভ ক্রিয়েটিভ

নেটিভ ক্রিয়েটিভের সাইজ হিসেবে ১x১ পিক্সেল ব্যবহার করুন। রেন্ডার করা বিজ্ঞাপনের সাইজ NativeStyle-এ সেট করা যেতে পারে অথবা কাস্টম রেন্ডারিংয়ের মাধ্যমে নির্ধারণ করা যেতে পারে।

Java

// Use the system defined native app install creative template.
long nativeAppInstallTemplateId = 10004400L;

// Use 1x1 as the size for native creatives.
Size size = new Size();
size.setWidth(1);
size.setHeight(1);
size.setIsAspectRatio(false);

TemplateCreative nativeAppInstallCreative = new TemplateCreative();
nativeAppInstallCreative.setName("Native creative #" + new Random().nextInt(Integer.MAX_VALUE));
nativeAppInstallCreative.setCreativeTemplateId(nativeAppInstallTemplateId);
nativeAppInstallCreative.setSize(size);

List<BaseCreativeTemplateVariableValue> templateVariables = Lists.newArrayList();

// Set the star rating.
StringCreativeTemplateVariableValue starRatingVariableValue =
    new StringCreativeTemplateVariableValue();
starRatingVariableValue.setUniqueName("Starrating");
starRatingVariableValue.setValue("4");
templateVariables.add(starRatingVariableValue);

GitHub-এ দেখুন

Python

# Use the system defined native app install creative template.
native_app_install_template_id = '10004400'

creative = {
    'xsi_type': 'TemplateCreative',
    'name': 'Native creative',
    'creativeTemplateId': native_app_install_template_id,
    'size': {'width': 1, 'height': 1, 'isAspectRatio': false},
    'creativeTemplateVariableValues': [
        {
            'xsi_type': 'StringCreativeTemplateVariableValue',
            'uniqueName': 'Starrating',
            'value': '4'
        }
    ]
}

GitHub-এ দেখুন

PHP

// Use the system defined native app install creative template.
$nativeAppInstallTemplateId = 10004400;

// Use 1x1 as the size for native creatives.
$size = new Size();
$size->width = 1;
$size->height = 1;
$size->isAspectRatio = false;

$nativeAppInstallCreative = new TemplateCreative();
$nativeAppInstallCreative->name = 'Native creative #' . uniqid();
$nativeAppInstallCreative->creativeTemplateId = $nativeAppInstallTemplateId;
$nativeAppInstallCreative->size = $size;

$starRatingVariableValue = new StringCreativeTemplateVariableValue();
$starRatingVariableValue->uniqueName = 'Starrating';
$starRatingVariableValue->value = '4';
$nativeAppInstallCreative->creativeTemplateVariableValues[] =
    $starRatingVariableValue;

GitHub-এ দেখুন

C#

// Use the system defined native app install creative template.
long nativeAppInstallTemplateId = 10004400L;

TemplateCreative nativeAppInstallCreative = new TemplateCreative();
nativeAppInstallCreative.name =
    String.Format("Native creative #{0}", new Random().Next(int.MaxValue));
nativeAppInstallCreative.creativeTemplateId = nativeAppInstallTemplateId;

// Use 1x1 as the size for native creatives.
Size size = new Size();
size.width = 1;
size.height = 1;
size.isAspectRatio = false;
nativeAppInstallCreative.size = size;

List<BaseCreativeTemplateVariableValue> templateVariables =
    new List<BaseCreativeTemplateVariableValue>();

templateVariables.Add(new StringCreativeTemplateVariableValue() {
  uniqueName = "Starrating",
  value = "4"
});

GitHub-এ দেখুন

Ruby

# Use the system defined native app install creative template.
creative_template_id = 10004400

creative = {
    :xsi_type => 'TemplateCreative',
    :name => "Native creative %d" % Time.new.to_i,
    :creative_template_id => creative_template_id,
    :size => {:width => 1, :height => 1, :is_aspect_ratio => false}
}

starrating_variable_value = {
    :xsi_type => 'StringCreativeTemplateVariableValue',
    :unique_name => 'Starrating',
    :value => '4'
}

creative[:creative_template_variable_values] = [
    starrating_variable_value
]

GitHub-এ দেখুন

নেটিভ স্টাইল তৈরি করা

NativeStyleService ব্যবহার করে নেটিভ স্টাইল তৈরি করা যেতে পারে। বর্তমানে, আপনার প্রদান করা CSS এবং HTML স্নিপেট API যাচাই করে না। টার্গেটিং সংক্রান্ত তথ্য সেট করার সময়, শুধুমাত্র এইসব ফিল্ড কাজ করে inventoryTargeting এবং customTargeting।

Java

long nativeAppInstallTemplateId = 10004400L;

// Create a native style for native app install ads.
NativeStyle nativeStyle = new NativeStyle();
nativeStyle.setName("Native style #" + new Random().nextInt(Integer.MAX_VALUE));
nativeStyle.setCreativeTemplateId(nativeAppInstallTemplateId);
nativeStyle.setSize(size);
nativeStyle.setHtmlSnippet(htmlSnippet);
nativeStyle.setCssSnippet(cssSnippet);

GitHub-এ দেখুন

Python

native_app_install_template_id = '10004400'

# Create a style for native app install ads.
native_style = {
    'name': 'Native style #%d' % uuid.uuid4(),
    'htmlSnippet': html_snippet,
    'cssSnippet': css_snippet,
    'creativeTemplateId': native_app_install_template_id,
    'size': {
        'width': width,
        'height': height,
        'isAspectRatio': False
    }
}

GitHub-এ দেখুন

PHP

$nativeAppInstallTemplateId = 10004400;

// Create a style for native app install ads.
$nativeStyle = new NativeStyle();
$nativeStyle->setName('Native style #'. uniqid());
$nativeStyle->setCreativeTemplateId($nativeAppInstallTemplateId);
$nativeStyle->setSize($size);
$nativeStyle->setHtmlSnippet($htmlSnippet);
$nativeStyle->setCssSnippet($cssSnippet);

GitHub-এ দেখুন

C#

long nativeAppInstallTemplateId = 10004400L;

// Create a style for native app install ads.
NativeStyle nativeStyle = new NativeStyle();
nativeStyle.name = string.Format("Native style #{0}", new Random().Next());
nativeStyle.creativeTemplateId = nativeAppInstallTemplateId;
nativeStyle.size = size;
nativeStyle.htmlSnippet = htmlSnippet;
nativeStyle.cssSnippet = cssSnippet;

GitHub-এ দেখুন

Ruby

native_app_install_template_id = 10004400

# Create a style for native app install ads.
native_style = {
  :name => 'Native style #%d' % (Time.new.to_f * 1000),
  :html_snippet => html_snippet,
  :css_snippet => css_snippet,
  :creative_template_id => native_app_install_template_id,
  :size => size
}

GitHub-এ দেখুন

স্টাইলটি ফ্লুইড সাইজের জন্য হলে, isFluid ফিল্ডটি 'সত্য' হিসেবে সেট করুন এবং size ১x১ পিক্সেল হিসেবে সেট করুন।

নেটিভ বিজ্ঞাপন ট্রাফিক করা

নেটিভ বিজ্ঞাপনের জন্য LineItem তৈরি করার সময়, CreativePlaceholder-এ CreativeSizeType টাইপের NATIVE সেট করতে হবে এবং পছন্দসই নেটিভ বিজ্ঞাপন ফর্ম্যাটের creativeTemplateId সেট করতে হবে।

Java

// Create creative placeholder size.
Size size = new Size();
size.setWidth(1);
size.setHeight(1);
size.setIsAspectRatio(false);

long nativeAppInstallTemplateId = 10004400L;

// Create the creative placeholder.
CreativePlaceholder creativePlaceholder = new CreativePlaceholder();
creativePlaceholder.setSize(size);
creativePlaceholder.setCreativeTemplateId(nativeAppInstallTemplateId);
creativePlaceholder.setCreativeSizeType(CreativeSizeType.NATIVE);

Python

native_app_install_template_id = '10004400'

# Create the creative placeholder.
creative_placeholder = {
    'size': {
        'width': '1',
        'height': '1'
    },
    'creativeTemplateId': native_app_install_template_id,
    'creativeSizeType': 'NATIVE'
}

PHP

$nativeAppInstallTemplateId = 10004400;

// Create the creative placeholder.
$creativePlaceholder = new CreativePlaceholder();
$creativePlaceholder->setSize(new Size(1, 1, false));
$creativePlaceholder->setCreativeTemplateId($nativeAppInstallTemplateId);
$creativePlaceholder->setCreativeSizeType(CreativeSizeType::NATIVE);

C#

// Create the creative placeholder size.
Size size = new Size();
size.width = 1;
size.height = 1;
size.isAspectRatio = false;

long nativeAppInstallTemplateId = 10004400L;

// Create the creative placeholder.
CreativePlaceholder creativePlaceholder = new CreativePlaceholder();
creativePlaceholder.size = size;
creativePlaceholder.creativeTemplateId = nativeAppInstallTemplateId;
creativePlaceholder.creativeSizeType = CreativeSizeType.NATIVE;

Ruby

# Create the creative placeholder.
creative_placeholder = {
    :size => {:width => 1, :height => 1, :is_aspect_ratio => false},
    :creative_template_id => 10004400,
    :creative_size_type => 'NATIVE'
}