弊社ではカラーミーショップで販売している商品を商品リスト広告(Googleショッピング)に出稿しています。
通常カラーミーショップを使用している場合において商品リスト広告を使用する場合は、カラーミーショップ通常のご利用料金に加えてオプション料金の費用が追加で発生します。
今回は弊社が追加料金無しで商品リスト広告へ出稿するために独自に開発したツールを大公開致します。
カラーミーショップを運用されている方、リスティング広告を運用されている方は特に参考になると思いますのでよろしければご覧下さい。
商品リスト広告とは
商品リスト広告は、キーワードや広告文の代わりにGoogle Merchant Centerに登録した商品データを使って表示できるアドワーズのリスティング広告です(Yahoo!プロモーション広告には本機能はありません)。
※ Google Merchant Centerについては前回の記事で解説しております。
Google検索結果の右上(プレミアムポジションの場合は中央)とGoogleショッピングに画像、商品名、価格、ショップ名を掲載することが出来ます。
商品リスト広告はWeb上だけで取引が完結できるサイトのみが出稿可能で、ユーザーは広告をクリックする前から商品写真と価格を確認することができるため、通常のリスティング広告と比較しても費用対効果が高い傾向にあります。
検索結果の上に表示した例(赤枠内)
Googleショッピング内に表示された商品リスト広告の例(赤枠内)
カラーミーで商品リスト広告を出稿するまでのコスト
費用対効果が高い商品リスト広告ですがカラーミーショップの正規の方法(オプションサービスを利用して)出稿した場合Googleに支払う通常の広告費に加えて下記の3パターンのいずれかの費用が追加で発生します。
パターンA
カラメル出店(クリック課金版)とGoogleショッピング商品掲載サービスの両方を契約する方法です。
商品リスト広告1アクセスあたり30円と月額540円の費用が追加で発生します。
パターンB
カラメル出店(成約課金版)とGoogleショッピング商品掲載サービスの両方を契約する方法です。
商品リスト広告経由の売上3%と月額540円の費用が追加で発生します。
取り扱う商品の内容にもよりますが多くの場合においてもっとも高い費用が発生します。
パターンC
Googleショッピング商品掲載サービスPROを契約する方法です。
月額5,400円の追加費用が発生します。
商品情報を自動でGoogleにアップロードできる反面、カラーミーショップの月額料金が1,332円(スタンダードプランの場合)であることを考えるとかなり割高なサービスであることがわかります。
そのため、カラーミーショップのオプションを通さずに運営者自身がGoogle Merchant Centerに商品情報を記載したcsvをアップロードしても良いのですが、商品点数が多い場合などは商品情報をcsvをまとめることに大変な労力がかかります。
コストカットツール
カラーミーオプションの追加費用も割高ですが、社員にcsvをまとめさせるにも人件費がかかります。
弊社ではカラーミーAPIを利用したツールでGoogle Merchant Centerに登録する商品情報csvを毎日自動で更新しています。
そのツールのプログラムソース(PHP)を特別に公開いたします。
$request_options = array(
'http' => array(
'method' => 'GET',
'header'=> "Authorization: Bearer ". " /* トークン */ \r\n"
)
);
$context = stream_context_create($request_options);
ob_start();
echo "id,title,description,link,condition,price,brand,mpn,google product category,image link,age group,gender,availability,color,product type\n";
for($j=0; $j<= /* 掲載したい商品数÷50の値 */; $j++){
$url = 'https://api.shop-pro.jp/v1/products.json?display_state=0&limit=50&offset='.($j*50);
$response_body = file_get_contents($url, false, $context);
$response_json = json_decode($response_body, true);
//echo $response_body;
echo count($response_json['products']);
for($i=0; $i<count($response_json['products']); $i++) { if($response_json['products'][$i]['stocks']>="1"){
echo $response_json['products'][$i]['id'].",";
echo ".$response_json['products'][$i]['name'].",";
echo $response_json['products'][$i]['simple_expl'].",";
echo "/* ショップのトップページURL */?pid=".$response_json['products'][$i]['id'].",";
echo "new,";
echo floor($response_json['products'][$i]['sales_price']*1.08).",";
echo "/* ブランド名 */,";
echo $response_json['products'][$i]['model_number'].",";
echo "/* */,";
echo $response_json['products'][$i]['image_url'].",";
echo "adult,";
echo "female,";
echo "in stock,";
echo ",";
if(strpos($response_json['products'][$i]['name'],"/* 商品カテゴリーA */")!== FALSE)
echo "/* 商品カテゴリーA */";
elseif(strpos($response_json['products'][$i]['name'],"/* 商品カテゴリーB */")!== FALSE)
echo "/* 商品カテゴリーB */";
elseif(strpos($response_json['products'][$i]['name'],"/* 商品カテゴリーC */")!== FALSE)
echo "/* 商品カテゴリーC */";
else
echo"[その他]";
echo "\n";
}
}
}
$output = ob_get_contents();
ob_end_clean();
$fp = fopen('feed.csv', 'w');
fwrite($fp, $output);
fclose($fp);
/* */で囲まれた範囲(トークン、掲載したい商品数、商品情報カテゴリー)は御自身の情報に置き換えてください。
その後、PHPが動くサーバーにアップロードして実行するとPHPと同じディレクトリにfeed.csvというファイル名で商品情報のまとめが吐き出されます。
弊社の様に定期的に商品情報を更新する場合は、cronを利用して定期的にPHPプログラムが実行されるようにしましょう。
