Quảng cáo khách sạn - Danh mục và nguồn cấp dữ liệu

Để quảng cáo danh sách cung ứng khách sạn trên Facebook, bạn phải chia sẻ thông tin về khách sạn của mình với Facebook. Bạn có thể thực hiện việc này bằng cách tạo một danh mục khách sạn rồi điền thông tin khách sạn vào danh mục đó. Bạn có thể điền và cập nhật danh mục theo 2 cách dưới đây:

Bạn có thể tạo và quản lý danh mục khách sạn trong Công cụ quản lý thương mại.

Cách sử dụng API để quản lý danh mục:

  1. Tạo danh mục khách sạn
  2. Tạo nhóm sản phẩm bằng danh mục khách sạn
  3. Liên kết danh mục với nguồn sự kiện

Nguồn cấp dữ liệu khách sạn - Tải dữ liệu khách sạn lên Facebook

Nguồn cấp dữ liệu khách sạn là một file có danh sách cung ứng khách sạn. Mỗi dòng hoặc mục trong file này biểu thị một khách sạn. Bạn có thể sử dụng một hoặc nhiều nguồn cấp dữ liệu khách sạn, miễn là tất cả nguồn cấp dữ liệu cộng lại chứa toàn bộ danh sách cung ứng khách sạn của bạn.

Định dạng nguồn cấp dữ liệu khách sạn được hỗ trợ

CSV

Mẫu CSV | Mẫu TSV (đã làm phẳng) | Mẫu TSV (kiểu JSON)

  • Hàng đầu tiên phải liệt kê các tên trường đã chọn theo thứ tự cung cấp giá trị. Những hàng tiếp theo sẽ cung cấp các giá trị tương ứng cho mỗi khách sạn.
  • Bạn cần đưa các trường có chứa dấu cách hoặc dấu phẩy vào trong "dấu ngoặc kép".
  • Đối với những trường lồng nhau hoặc có nhiều giá trị như address, neighborhood hoặc image, bạn có thể biểu thị bằng các giá trị mã hóa JSON hoặc bằng một tập hợp các cột văn bản thuần túy "đã làm phẳng" được gắn nhãn theo cú pháp đường dẫn JSON như address.city, neighborhood[0], image[0].url, image[0].tag[0], image[0].tag[1]. Bạn có thể sử dụng cả hai quy ước thay cho nhau trong cùng một file.

XML

Mẫu XML

  • Nút XML <listings> gốc chứa một tập hợp nút <listing>, mỗi nút biểu thị một khách sạn.
  • File phải bắt đầu bằng thẻ khai báo <?xml hợp lệ.

Trình phân tích cú pháp nguồn cấp tự động phát hiện mã hóa văn bản UTF8, UTF16 hoặc UTF32 và mặc định là LATIN1 nếu gặp trình tự byte không mong muốn. Bạn có thể cung cấp văn bản trong các giá trị trường bằng ngôn ngữ bất kỳ, tuy nhiên tên trường phải được cung cấp chính xác như dưới đây, bằng tiếng Anh.

Trường thông tin được hỗ trợ - Quảng cáo khách sạn

Dưới đây là các trường thông tin được hỗ trợ dành cho những mặt hàng bạn thêm vào danh mục sản phẩm của mình.

Đối với danh mục được bản địa hóa, hãy xem phần trường thông tin được hỗ trợ cho quảng cáo khách sạn.

Trường thông tin và loạiMô tả

hotel_id

loại: chuỗi

Bắt buộc.

Độ dài tối đa: 100

Thông tin nhận dạng duy nhất cho khách sạn trong danh mục. Hệ thống sẽ khớp ID này với bất kỳ content_ids nào được cung cấp trong ứng dụng hotel của bạn và sự kiện pixel. Mẹo: Để cải thiện hiệu quả, hãy tránh sử dụng dấu cách cho trường thông tin nhận dạng duy nhất này. Không sử dụng ID trùng lặp.

Ví dụ: FB_hotel_1234

room_id

loại: chuỗi

Bắt buộc nếu thêm thông tin phòng khách sạn.

Nhập ID duy nhất cho loại phòng khách sạn. Số ký tự tối đa: 100 Ví dụ: FB_hotel_room_1234

name

loại: chuỗi

Bắt buộc.

Tên phổ biến nhất của khách sạn.

Ví dụ: Facebook Hotel

description

loại: chuỗi

Bắt buộc.

Kích thước tối đa: 5000

Phần mô tả tóm tắt về khách sạn.

Ví dụ: Only 30 minutes away from San Francisco.

checkin_date

loại: chuỗi

Bắt buộc nếu thêm thông tin phòng khách sạn.

Ngày nhận phòng khi lưu trú ở khách sạn. Bạn có thể thêm tối đa 180 ngày từ ngày tải nguồn cấp dữ liệu lên. Hãy sử dụng tiêu chuẩn ISO-8601 (YYYY-MM-DD).

Ví dụ: 2017-08-01

length_of_stay

loại: chuỗi

Bắt buộc nếu thêm thông tin phòng khách sạn.

Số đêm lưu trú ở khách sạn.

Ví dụ: 7

base_price

loại: chuỗi

Bắt buộc nếu thêm thông tin phòng khách sạn.

Giá cơ bản mỗi đêm của phòng khách sạn. Hãy nhớ thêm loại đơn vị tiền tệ cho giá (ví dụ: USD cho đô la Mỹ). Hãy đặt định dạng giá như sau: chi phí rồi đến dấu cách, tiếp đó là mã đơn vị tiền tệ theo tiêu chuẩn ISO.

Ví dụ: 199.00 EUR

price

loại: chuỗi

Bắt buộc nếu thêm thông tin phòng khách sạn.

Tổng giá khi lưu trú ở khách sạn, dựa vào checkin_datelength_of_stay. Hãy đặt định dạng giá như sau: chi phí rồi đến dấu cách, tiếp đó là mã đơn vị tiền tệ theo tiêu chuẩn ISO.

Ví dụ: 1393.00 USD

tax

loại: chuỗi

Bắt buộc nếu thêm thông tin phòng khách sạn.

Thuế suất áp dụng cho giá. Hãy đặt định dạng giá như sau: chi phí rồi đến dấu cách, tiếp đó là mã đơn vị tiền tệ theo tiêu chuẩn ISO.

Ví dụ: 14.00 USD

fees

loại: chuỗi

Bắt buộc nếu thêm thông tin phòng khách sạn.

Phí áp dụng cho giá. Hãy đặt định dạng giá như sau: chi phí rồi đến dấu cách, tiếp đó là mã đơn vị tiền tệ theo tiêu chuẩn ISO.

Ví dụ: 253.00 USD

url

loại: chuỗi

Bắt buộc.

Liên kết đến trang web bên ngoài để đặt phòng khách sạn. Bạn cũng có thể chỉ định URL ở cấp độ quảng cáo bằng cách sử dụng template_url_spec. URL ở cấp độ quảng cáo được ưu tiên hơn so với URL trong nguồn cấp dữ liệu.

Ví dụ: https://www.facebook.com/hotel

image[0].url

loại: đối tượng

Hãy xem phần Thông số đối tượng hình ảnh.

image[0].tag

loại: đối tượng

Hãy xem phần Thông số đối tượng hình ảnh.

brand

loại: chuỗi

Bắt buộc.

Tên thương hiệu của chuỗi khách sạn.

Ví dụ: Hilton

address

loại: đối tượng

Hãy xem phần Thông số đối tượng địa chỉ.

neighborhood[0]

loại: chuỗi

Bắt buộc.

Số lượng khu vực tối đa cho phép: 20

Khu vực nơi khách sạn tọa lạc. Nếu có nhiều khu vực, hãy thêm cột bổ sung cho từng khu vực và sử dụng cú pháp đường dẫn JSON trong từng tên cột để biểu thị số lượng khu vực.

Ví dụ: Belle Haven

latitude

loại: số thực

Bắt buộc.

Vĩ độ của khách sạn.

Ví dụ: 37.484100

longitude

loại: số thực

Bắt buộc.

Kinh độ của khách sạn.

Ví dụ: -122.148252

sale_price

loại: chuỗi

Không bắt buộc.

Giá ưu đãi mỗi đêm khi lưu trú ở khách sạn, dựa vào checkin_datelength_of_stay. Hãy sử dụng trường này khi bạn muốn quảng cáo giá ưu đãi so với giá thông thường của khách sạn. Nhớ thêm loại đơn vị tiền tệ cho giá (ví dụ: USD cho đô la Mỹ). Đảm bảo sale_price của khách sạn thấp hơn base_price. Hãy đặt định dạng giá như sau: chi phí rồi đến dấu cách, tiếp đó là mã đơn vị tiền tệ theo tiêu chuẩn ISO.

Ví dụ: 149.00 USD

guest_ratings.score

loại: đối tượng

Hãy xem Thông số đối tượng xếp hạng của khách.

guest_ratings.rating_system

loại: đối tượng

Hãy xem phần Thông số đối tượng xếp hạng của khách.

star_rating

loại: số thực

Hãy xem Thông số đối tượng xếp hạng của khách.

loyalty_program

loại: chuỗi

Không bắt buộc.

Chương trình khách hàng thân thiết mà bạn dùng để kiếm điểm khi lưu trú ở khách sạn.

Ví dụ: Premium program

margin_level

loại: số nguyên

Không bắt buộc.

Chỉ báo về khả năng sinh lợi của khách sạn, có giá trị từ 1 đến 10.

Ví dụ: 9

phone

loại: chuỗi

Không bắt buộc.

Số điện thoại chính của khách sạn.

Ví dụ: +61 296027455

applink

loại: đối tượng

Không bắt buộc.

Liên kết sâu thẳng đến trang chi tiết về khách sạn trong ứng dụng di động bằng cách sử dụng Liên kết ứng dụng. Bạn có thể chỉ định liên kết sâu theo thứ tự ưu tiên, từ cao nhất đến thấp nhất:

  1. cấp độ quảng cáo bằng template_url_spec
  2. Tại đây trong nguồn cấp dữ liệu bằng Đối tượng liên kết ứng dụng
  3. Bằng cách thêm thẻ meta Liên kết ứng dụng vào trang web của bạn.

Tìm hiểu thêm về liên kết sâu sản phẩm.

priority

loại: số nguyên

Không bắt buộc.

Chỉ báo về mức độ ưu tiên của khách sạn, có giá trị từ 0 (mức ưu tiên thấp nhất) đến 5 (mức ưu tiên cao nhất). Ví dụ: 5

category

loại: chuỗi

Không bắt buộc.

Loại thuộc tính. Hạng mục có thể là bất kỳ loại nội dung mô tả nội bộ nào mà bạn muốn. Ví dụ: Resort, Day Room

number_of_rooms

loại: số nguyên

Không bắt buộc.

Tổng số phòng/căn hộ trong bài niêm yết khách sạn này.

Ví dụ: 150

status

Loại: chuỗi

Kiểm soát việc trạng thái của mặt hàng là đang hoạt động hay đã lưu trữ trong danh mục. Mọi người chỉ có thể xem những mặt hàng đang hoạt động trong quảng cáo, cửa hàng hoặc bất kỳ kênh nào khác. Giá trị được hỗ trợ: active, archived. Trạng thái mặc định của mặt hàng là đang hoạt động. Tìm hiểu thêm về cách lưu trữ mặt hàng.


Ví dụ: active


Lưu ý: Một số nền tảng đối tác như Shopify có thể đồng bộ mặt hàng với danh mục ở trạng thái staging. Trạng thái này có ý nghĩa tương tự archived.

Trước đây, trường này có tên là visibility. Mặc dù chúng tôi vẫn hỗ trợ tên trường cũ, nhưng bạn nên sử dụng tên mới.

Thông số đối tượng hình ảnh


Tên và loại trườngMô tả

url

loại: chuỗi

Bắt buộc.

Số mục tối đa: 20.

Liên kết URL đến hình ảnh của mặt hàng sẽ xuất hiện trong quảng cáo. Hãy tuân thủ các quy cách hình ảnh sau đây:

  • Tất cả hình ảnh phải có định dạng JPG, GIF hoặc PNG.

  • Đối với quảng cáo quay vòng và quảng cáo bộ sưu tập: Hình ảnh hiển thị ở định dạng vuông (1:1). Kích thước hình ảnh tối thiểu là 500 x 500 px. Bạn nên dùng kích thước 1024 x 1024 px để có chất lượng cao nhất.

  • Đối với quảng cáo một hình ảnh: Hình ảnh hiển thị với tỷ lệ khung hình 1,91:1. Kích thước hình ảnh tối thiểu là 500 x 500 px. Bạn nên dùng kích thước 1200 x 628 px để có chất lượng cao nhất.

  • Nếu có nhiều hình ảnh, hãy thêm cột bổ sung cho từng hình ảnh và sử dụng cú pháp đường dẫn JSON trong từng tên cột để biểu thị số lượng hình ảnh.

Ví dụ: image[0].url; image[1].url

Ví dụ: https://www.facebook.com/facebook_hotel.jpg

tag

loại: chuỗi

Không bắt buộc.

Thẻ được thêm vào hình ảnh để cho biết nội dung trong hình ảnh. Một hình ảnh có thể liên kết với nhiều thẻ.

Ví dụ: Fitness Center, Swimming Pool, suite

INSTAGRAM_STANDARD_PREFERRED - Cho phép nhà quảng cáo gắn thẻ một hình ảnh cụ thể trong nguồn cấp dữ liệu làm hình ảnh mặc định để dùng cho Instagram. Thẻ này có phân biệt chữ hoa chữ thường.


Thông số đối tượng địa chỉ

Đối với những trường lồng nhau hoặc có nhiều giá trị như address, bạn có thể biểu thị bằng các giá trị mã hóa JSON hoặc bằng một tập hợp các cột văn bản thuần túy "đã làm phẳng" được gắn nhãn theo cú pháp đường dẫn JSON như address.region. Bạn có thể sử dụng cả hai quy ước thay cho nhau trong cùng một file.


Tên và loại trườngMô tả

addr1 (address.addr1)

loại: đối tượng

Bắt buộc.

Địa chỉ đường chính của khách sạn.

Ví dụ: 1600 Pennsylvania Avenue

address.addr2

loại: đối tượng

Không bắt buộc.

Địa chỉ đường thứ hai của khách sạn.

Ví dụ: Apartment 1

address.addr3

loại: đối tượng

Không bắt buộc.

Địa chỉ đường thứ ba của khách sạn.

Ví dụ: Downstairs

address.city_id (city_id)

loại: chuỗi

Không bắt buộc.

Giá trị để sử dụng trong URL liên kết sâu (template_url) trong nội dung quảng cáo.

Ví dụ: 12345

address.city (city)

loại: chuỗi

Bắt buộc.

Thành phố nơi khách sạn tọa lạc.

Ví dụ: New York

address.region (region)

loại: chuỗi

Bắt buộc.

Tiểu bang, hạt hoặc tỉnh nơi khách sạn tọa lạc.

Ví dụ: California

address.country (country)

loại: chuỗi

Bắt buộc.

Quốc gia nơi khách sạn tọa lạc.

Ví dụ: United States

address.postal_code (postal_code)

loại: chuỗi

Bắt buộc đối với các quốc gia không có hệ thống mã bưu chính.

Mã bưu chính hoặc mã zip của khách sạn.

Ví dụ: 94125, NW1 3FG

Thông số đối tượng xếp hạng của khách


Tên và loại trườngMô tả

guest_ratings.score (score)

loại: đối tượng

Không bắt buộc.

Tổng số người đã đánh giá khách sạn của bạn. Nếu trường này được chỉ định, bạn cũng phải cung cấp score, max_score, number_of_reviewersrating_system.

Ví dụ: 9.0/10

guest_ratings.number_of_reviewers (number_of_reviewers) loại: số nguyên

Không bắt buộc.

Tổng số người đã xếp hạng khách sạn này.

Ví dụ: 5287

guest_ratings.rating_system (rating_system)

loại: chuỗi

Không bắt buộc.

Hệ thống bạn sử dụng cho bài đánh giá của khách.

Ví dụ: Expedia, TripAdvisor

max_score

loại: số nguyên

Bắt buộc.

Giá trị tối đa của điểm xếp hạng khách sạn. Phải lớn hơn hoặc bằng 0 và nhỏ hơn hoặc bằng 100.

Ví dụ: 10

API Khách sạn - Tạo và quản lý khách sạn trực tiếp

Bạn có thể sử dụng API Khách sạn để thêm, chỉnh sửa và gỡ trực tiếp khách sạn trong danh mục. Hãy sử dụng Tài liệu tham khảo về API Khách sạn để biết thêm thông tin về cách quản lý khách sạn bằng API.

Dưới đây là các phần chỉ phù hợp để quản lý danh mục bằng API này.

Tạo danh mục khách sạn bằng API

Danh mục khách sạn là vùng chứa danh sách cung ứng khách sạn. Để sử dụng API danh mục, hãy đảm bảo bạn có Cấp độ truy cập API Marketing thích hợp và bạn đã chấp nhận Điều khoản dịch vụ bằng cách tạo danh mục đầu tiên thông qua Trình quản lý kinh doanh.

Để tạo danh mục khách sạn cho quảng cáo khách sạn, hãy đặt vertical thành destinations:

curl -X POST \
  -F 'name="Test Hotel Catalog"' \
  -F 'vertical="hotels"' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v10.0/BUSINESS_ID/owned_product_catalogs

Tải nguồn cấp dữ liệu khách sạn lên thông qua API

Sau khi tạo danh mục, bạn phải tải nguồn cấp dữ liệu khách sạn lên Facebook. Hãy sử dụng API này để tạo đối tượng nguồn cấp dữ liệu cho mọi nguồn cấp dữ liệu mà bạn muốn tải lên. Chúng tôi hỗ trợ tải lên theo lịch và tải lên trực tiếp.

Lọc danh mục khách sạn đến nhóm khách sạn

Nhóm khách sạn là tập hợp con của danh mục. Để thiết lập quảng cáo khách sạn, bạn cần có nhóm khách sạn. Do đó, bạn cần tạo ít nhất một nhóm khách sạn.

Nhóm khách sạn được xác định bằng cách áp dụng bộ lọc cho danh mục khách sạn. Ví dụ: bạn có thể tạo một nhóm khách sạn chứa tất cả các khách sạn có star_rating lớn hơn 3. Lưu ý: Bạn cũng có thể tạo nhóm khách sạn mà không có bộ lọc nào. Trong trường hợp đó, nhóm khách sạn sẽ chứa tất cả khách sạn trong danh mục của bạn.

Để tạo nhóm khách sạn chứa tất cả các khách sạn có "thương hiệu mẫu" được đề cập trong trường brand:

curl -X POST \ -F 'name="Test Hotel Set"' \ -F 'filter={ "brand": { "i_contains": "sample brand" } }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v19.0/<PRODUCT_CATALOG_ID>/product_sets
'use strict'; const bizSdk = require('facebook-nodejs-business-sdk'); const ProductCatalog = bizSdk.ProductCatalog; const ProductSet = bizSdk.ProductSet; const access_token = '<ACCESS_TOKEN>'; const app_secret = '<APP_SECRET>'; const app_id = '<APP_ID>'; const id = '<PRODUCT_CATALOG_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 = { 'name' : 'Test Hotel Set', 'filter' : {'brand':{'i_contains':'sample brand'}}, }; const product_sets = (new ProductCatalog(id)).createProductSet( fields, params ); logApiCallResult('product_sets api call complete.', product_sets);
require __DIR__ . '/vendor/autoload.php'; use FacebookAds\Object\ProductCatalog; use FacebookAds\Object\ProductSet; use FacebookAds\Api; use FacebookAds\Logger\CurlLogger; $access_token = '<ACCESS_TOKEN>'; $app_secret = '<APP_SECRET>'; $app_id = '<APP_ID>'; $id = '<PRODUCT_CATALOG_ID>'; $api = Api::init($app_id, $app_secret, $access_token); $api->setLogger(new CurlLogger()); $fields = array( ); $params = array( 'name' => 'Test Hotel Set', 'filter' => array('brand' => array('i_contains' => 'sample brand')), ); echo json_encode((new ProductCatalog($id))->createProductSet( $fields, $params )->exportAllData(), JSON_PRETTY_PRINT);
from facebook_business.adobjects.productcatalog import ProductCatalog from facebook_business.adobjects.productset import ProductSet from facebook_business.api import FacebookAdsApi access_token = '<ACCESS_TOKEN>' app_secret = '<APP_SECRET>' app_id = '<APP_ID>' id = '<PRODUCT_CATALOG_ID>' FacebookAdsApi.init(access_token=access_token) fields = [ ] params = { 'name': 'Test Hotel Set', 'filter': {'brand':{'i_contains':'sample brand'}}, } print ProductCatalog(id).create_product_set( 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 = \"<PRODUCT_CATALOG_ID>\"; APIContext context = new APIContext(access_token).enableDebug(true); new ProductCatalog(id, context).createProductSet() .setName(\"Test Hotel Set\") .setFilter(\"{\\"brand\\":{\\"i_contains\\":\\"sample brand\\"}}\") .execute(); } }
require 'facebook_ads' access_token = '<ACCESS_TOKEN>' app_secret = '<APP_SECRET>' app_id = '<APP_ID>' id = '<PRODUCT_CATALOG_ID>' FacebookAds.configure do |config| config.access_token = access_token config.app_secret = app_secret end product_catalog = FacebookAds::ProductCatalog.get(id) product_sets = product_catalog.product_sets.create({ name: 'Test Hotel Set', filter: {'brand':{'i_contains':'sample brand'}}, })

Thông số filter được tạo thành từ các toán tử và dữ liệu sau:

Toán tửLoại bộ lọc

i_contains

Chứa chuỗi con. Toán tử có phân biệt chữ hoa chữ thường.

i_not_contains

Không chứa chuỗi con. Toán tử có phân biệt chữ hoa chữ thường.

contains

Chứa chuỗi con. Toán tử có phân biệt chữ hoa chữ thường.

not_contains

Không chứa chuỗi con. Toán tử có phân biệt chữ hoa chữ thường.

eq

Bằng. Toán tử có phân biệt chữ hoa chữ thường.

neq

Không bằng. Toán tử có phân biệt chữ hoa chữ thường.

lt

Nhỏ hơn. Chỉ dành cho các trường số.

lte

Nhỏ hơn hoặc bằng. Chỉ dành cho các trường số.

gt

Lớn hơn. Chỉ dành cho các trường số.

gte

Lớn hơn hoặc bằng. Chỉ dành cho các trường số.

Dữ liệuDữ liệu được lọc.

hotel_id

Thông tin nhận dạng duy nhất cho khách sạn trong danh mục.

brand

Thương hiệu của chuỗi khách sạn.

base_price_amount

Giá cơ bản mỗi đêm của khách sạn này. Giá tính bằng xu (4999 có nghĩa là $49,99).

sale_price_amount

Giá ưu đãi mỗi đêm của khách sạn này. Giá tính bằng xu (4999 có nghĩa là 49,99 USD).

currency

Đơn vị tiền tệ

city

Thành phố nơi khách sạn tọa lạc.

country

Quốc gia của khách sạn.

name

Tên phổ biến nhất của khách sạn.

star_rating

Xếp hạng sao của khách sạn. Giá trị hợp lệ là từ 1 đến 5 và phải là bội số của 0,5.