前言

Meta 在 2024/05/20 發布了可以提升廣告投放成效的 新方法,就是在商品目錄中上傳影片的方式。但是,到底要怎麼把影片塞到商品目錄,是一個大問題,於是造就了這篇不斷測試的文章。

文件解讀

根據 Meta 官方說明文件,可以在原先的商品目錄上傳一個叫 video[0].url 的欄位,而且單個商品,可以上傳至多 20 的影片,如: video[1].url ~ video[19].url。但是,這個欄位名稱真的太特別,不像一般 price 欄位,方便解讀。所以讓人很困惑。

此外,目前商品目錄的格式有很多種,包含 csv, xml, google sheet 等等。如果 video[0].url 要轉換成 xml 格式,tag 又要取名成甚麼,文件並沒有寫得很清楚,因為我們主要是用 API 產出 xml 格式的商品目錄。

video 欄位說明

後來,找到了這篇 文件,貌似有點頭緒。如果格式是 csv,欄位名稱真的是 video[0].url

要注意的是,商品目錄中有影片的商品數量限制,目前不能超過 30000 個。

csv video 欄位格式

xml video 欄位格式

xml 格式也有附上範例,欄位名稱要叫 <video>,影片連結要放在 <url> 中,展開如下。

1
2
3
4
5
6
7
8
9
<video>
<url>https://{URL1}</url>
<tag>video_product_set1</tag>
<tag>video_product_set2 </tag>
</video>
<video>
<url>https://{URL2}</url>
<tag>video_product_set1</tag>
</video>

另外,我也嘗試直接在後台編輯商品,看看是否可以直接貼影片連結,結果不行。手動編輯商品只能從電腦本機端上傳,不過至少可以看的到影片上傳成功的樣子。

手動編輯商品,新增影片

Meta 後台測試資料格式

上傳 FB 成功畫面如下,csv, xml, google sheet 的檔案格式我都有測試過,都可以成功上傳。如果不行,請用其他廣告帳號試試看

上傳後台成功畫面

我在測試過程中發現,有些帳號無法顯示影片連結縮圖,換個廣告帳號就可以,真的很弔詭。目前測試到上傳 10000 個商品有成功,但是有些廣告帳號,meta 後台就是無法顯示影片縮圖,懷疑是 Meta 廣告後台設計問題。

  1. csv 成功案例,使用 video[0].url 欄位,不用懷疑,欄位名稱就叫 video[0].url。請注意: 商品的必填欄位都要有,我是隨意用一個電商商品做測試。

    1
    2
    id,title,description,availability,condition,link,image_link,brand,google_product_category,sale_price,price,item_group_id,video[0].url
    1234567,和漢淨肌潔面乳,全新和漢淨肌系列!抗痘之光,進化再升級更淨膚、更祛荳、更保水添加多種植萃成分,溫和改善肌膚煩惱全系列無酒精,敏弱肌安心使用!,in stock,new,https://www.orbis.com.tw/prod.php?pid=4899,https://www.orbis.com.tw/u/product/2022/02/e4f535354ab09b891c041a7b95c18232.jpg,orbis,首頁 > 系列商品 > 和漢淨肌系列 > 和漢淨肌潔面乳,490,550,1234567,https://storage.googleapis.com/ec-feed-images/test_video.mp4
  2. google sheet 成功案例,跟 csv 格式一樣,也是用 video[0].url 的欄位。

  3. xml 成功案例,可以參考下面,自行創建 xml 檔測試,測試影片連結可以用 這個影片連結

    注意: video 需要有 namespaces,<g:video>,url 不用 namespaces,<url>

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?xml version="1.0" encoding="UTF-8"?>
    <rss xmlns:g="http://base.google.com/ns/1.0" version="2.0">
    <channel>
    <title>Test Store</title>
    <link>http://www.example.com</link>
    <description>An example item from the feed</description>
    <item>
    <g:id>1234567</g:id>
    <g:title>和漢淨肌潔面乳</g:title>
    <g:description>全新和漢淨肌系列!抗痘之光,進化再升級更淨膚、更祛荳、更保水添加多種植萃成分,溫和改善肌膚煩惱全系列無酒精,敏弱肌安心使用!</g:description>
    <g:link>https://www.orbis.com.tw/prod.php?pid=4899</g:link>
    <g:image_link>https://www.orbis.com.tw/u/product/2022/02/e4f535354ab09b891c041a7b95c18232.jpg</g:image_link>
    <g:brand>orbis</g:brand>
    <g:google_product_category>首頁 &gt; 系列商品 &gt; 和漢淨肌系列 &gt; 和漢淨肌潔面乳</g:google_product_category>
    <g:item_group_id>1234567</g:item_group_id>
    <g:condition>new</g:condition>
    <g:availability>in stock</g:availability>
    <g:sale_price>490</g:sale_price>
    <g:price>550</g:price>
    <g:video>
    <url>https://storage.googleapis.com/ec-feed-images/test_video.mp4</url>
    </g:video>
    </item>
    </channel>
    </rss>

踩雷辛酸路程

  1. 用不同 Meta 商品目錄帳號交叉測試
    在 Meta 廣告後台新增商品目錄時,就可以下載 csv 範本,而且官方提供的 csv 範本的中,影片欄位就是 video[0].url

    當時我已經用官方範例,只是把測試影片連結換掉,仍然無法上傳成功。後來,用另一個廣告帳號就可以了🤔。猜測是廣告後台設定問題,或是 Meta 的這個功能還沒有很齊全,正在做 AB test。

    官方 csv 範例下載

  2. xml 格式測試
    xml 的格式測試是最久的,因為我一直無法參透 video[0].url 到底要怎麼搭配,所以嘗試至少 10 次以上的組合。

    另外,文件有規定不能用 youtube 影片。測試到最後,靈機一動才想說用別的帳號測試,因為有些廣告帳號不會顯示,真的是心力交瘁😶‍🌫️

    • 錯誤範例 1 : 都沒有 namespaces

      1
      2
      3
      <video>
      <url>https://storage.googleapis.com/ec-feed-images/test_video.mp4</url>
      </video>
    • 錯誤範例 2 : 都有 namespaces

      1
      2
      3
      <g:video>
      <g:url>https://storage.googleapis.com/ec-feed-images/test_video.mp4</url>
      </g:video>
    • 錯誤範例 3 : 把 url 當作 attribute

      1
      <video url="https://storage.googleapis.com/ec-feed-images/test_video.mp4"/>
    • 錯誤範例 4 : 用 videos tag 再包一層

      1
      2
      3
      4
      5
      <g:videos>
      <g:video>
      <g:url>https://storage.googleapis.com/ec-feed-images/test_video.mp4</url>
      </g:video>
      </g:videos>
  3. 新增商品目錄時,提示支援的欄位
    上傳商品目錄時,如果有對應不上的欄位, Meta 有提供可以用其他欄位替代,如下圖,代表 Meta 抓不到你的 video 的欄位資訊。

    我有測試新增 video_link 欄位當作替代,結果出現更多編碼相關問題,於是放棄繞道亂測試。

    上傳後台欄位提示

GCS Bucket 測試

因為測試一次就要上一次 PR,還需要同事 review,並且等待 CICD,過程實在繁複,很難做到即時測試。後來,我直接使用 GCS,剛好我有上傳跟下載的權限,把 xml 上傳到 bucket,這樣就可以輕鬆測試了。

  • 下載指令: gsutil cp gs://your-bucket-name/path/to/your-file /local/destination/path

  • 上傳指令: gsutil cp /local/file/path gs://your-bucket-name/path/to/destination

    xml 在 bucket 上的呈現