WooCommerce APIでGoogle Listing&Ads商品属性GTIN/MPN等を登録する
WooCommerceの商品をお手軽にGoogle広告に出稿できる「Google Listing & Ads」というプラグインを使うと、商品に対してGTIN・MPN・Brand属性など登録する欄があります。
がしかし、
WooCommerce REST APIを使ってプログラムから商品を登録するとき、どのようなフォーマットでここのデータを指定するのか
が分からなかったので、メモしておきます。
ー もくじ ー
WooCommerce APIで商品のGoogle Listing&Ads GTIN/MPN等データを登録する
結論、商品オブジェクトを以下のように作ってPOSTすればOK。
Pythonproduct_data = {
"name": name,
...省略...
"meta_data": [
{
"key": "_wc_gla_gtin",
"value": "★GTIN★",
},
{
"key": "_wc_gla_mpn",
"value": "★MPN★",
},
{
"key": "_wc_gla_brand",
"value": "★Brand★",
},
{
"key": "_wc_gla_condition",
"value": "★condition★",
},
]
}
valueを適宜書き換えてください。
結局はProductsのカスタムフィールドの一部ということで、mete_dataでkey, valueを指定してあげればいいということでした。
(言語によって書き方は色々あるので、WooCommerce Rest APIで商品登録するコードは省略しています)
Condition(_wc_gla_condition) の注意点
管理画面の選択肢上だと「New」「Refurbished」「Used」とあるのでそのまま
"value": "New"
と大文字で指定してしまうと、Defaultのまま変わらず反映されないので注意。
"value": "new"、"value": "refurbished"、"value": "used"と小文字で指定してください。
これは他の選択肢になっている欄全てに当てはまるかと思います(Condition以外は未確認)。
Gender以下のデータを登録する場合
上記コードスニペットにはGTIN、MPN、Brand、Conditionの4属性しか含めませんでしたが、meta_dataのkeyを_wc_gla_genderや_wc_gla_sizeのように追加していけば登録できます。
meta_dataのkeyが分からない場合
とはいえ、全項目を試したわけではないので、もし_wc_gla_を接頭辞にしてもデータが反映されない場合、データベースを直接見に行くという地道な方法で割り出すことができます。
以下、レンタルサーバーなどで「phpmyadmin」というWebブラウザからデータベースの中身を閲覧/更新できるツールを使用する例で書いていきます。
以下2ステップ。
- WordPress管理画面から、keyを知りたい欄にダミーデータを登録
- phpmyadminでダミーデータを検索
1. WordPress管理画面から、keyを知りたい欄にダミーデータを登録
たとえば「GTIN」データを登録したいけどmeta_dataのkeyが分からない、と仮定します。
その場合、まず以下のように(何でもいいので)ダミーデータを登録しましょう。
2. phpmyadminでダミーデータを検索
データベースの操作は慎重に行いましょう。
誤クリックなど意図しない操作で気付かないうちに編集・保存をしてしまうと、サイトが壊れる可能性があります。
次に、phpmyadminへアクセスし、
- サイトデータが繋がっているデータベースを選択
- 「検索」をクリック
- 検索欄に先ほど登録したダミーデータを入力
- 「実行」をクリック
▼xxx_postmetaというテーブルで「1件以上が一致」しているはずなので「表示」をクリック。
▼クリックしてしばらく待つと、検索データが表示されます。
これで、検索したダミーデータmeta_valueに対応するmeta_keyが分かりました。
WordPress管理画面から、登録したダミーデータの削除を忘れずに。