2019年8月28日こんにちは、三上つかさです。当サイトは、何か月か前にAmazonアソシエイトに登録しましたが、現状まったくその機能を使っていません。もったいないかなぁと思いつつも、紹介する商品が思いつかず、放置しています。当サイトのほかに、TwitterアカウントもAmazonアソシエイトに見事承認されまおりまして、Twitterでの活動もできることになっています。そちらも例のごとく使用していなかったのですが、つい先日思い立って、ついにTwitterでリンクを張ってみることにしたのです。私は当サイトのほかに「漫画らぶ」というサイトを運営しておりまして、漫画の紹介文とともに、リンクを貼ってみました。ここで問題が発生しました。それは、AmazonアソシエイトのリンクがTwitterカードにならないということです。あれこれ悩んだ結果、Twitterカードを表示させることに成功したので、備忘録をここに書き残しておきます。・どうすればTwitterカードを表示できるかTwitterカードとはまずはTwitterカードとは何かを軽く説明していきます。1まずはTwitterカードとは何かを軽く説明していきます。Twitterカードとは、リンクに応じて、サムネイルやディスクリプションを表示してくれるありがたい機能です。SEO」を使用し、カードの情報を作っています。Twitterの表示(PCの場合)は以下のようになっています。2018年9月18日Twitterでの表示は問題ありませんが、このようにサイトに埋め込むとリンクが二重に表示されることがあります。サムネイルと概要を枠線で囲んだ部分すべてがリンクとなっており、画像とリンクを別々に貼るよりも、サイトへ流入させやすいのがTwitterカードの特徴です。/>このように、HTMLにメタタグを記載する必要があります。SEO」で自動的にメタタグを挿入してくれるので、それほど手間はかかりません。Amazonの場合はどうでしょうか。AmazonアソシエイトのリンクでTwitterカードを表示させる方法を説明していきます。Amazonアソシエイトのリンクの場合AmazonアソシエイトのリンクでTwitterカードを表示させるために、いくつかの試行錯誤を行いました。1AmazonアソシエイトのリンクでTwitterカードを表示させるために、いくつかの試行錯誤を行いました。いくつかのパターンを検証し、「これなら表示される!」というものを見つけることができました。検証結果を少し紹介します。1短縮URLと通常URLで表示の差異はないまず気になるのが、「短縮URLと通常URL」の違いです。いつからか忘れましたが、短縮URLを表示してくれるようになって、文字数をかなり省略できるようになりました。「短縮URLだからTwitterカードが表示されないのか?」と思うこともありましたが、結論から言うと、短縮URLでも通常URLでもTwitterカードは表示されます。問題を起こしているのは、短縮URLではないようです。・「dp」が入っていることが必要!・「https://www.amazon.co.jp/exec/obidos/asin/商品ID/アソシエイトID/」とすればいける!といったことが書いてあります。たしかに「dp」が入っている方が成功率が高いかもしれませんが、2つ目のurlではうまくいきません。「運が良ければTwitterカードが現れる」です。無責任かもしれませんが、現状、AmazonのリンクでTwitterカードを100%出す方法はありません。(あったら教えてください。お願いします)ただ、こんな回答では納得いかないと思います。記事をつくっているのだから、なんでそんなことになっているのかという原因と、がんばってTwitterカードを表示させる方法をお教えします。Twitterカードが表示されないかというと、上述したメタタグが見つからないからです。validatorという、Twitterカードが正常に見えるかどうかを確かめる機能があるので、そちらで検証します。successfullyメタタグが発見され、カード情報の読み出しに成功したという意味のLOGが表示されます。foundメタタグが発見できなかったという意味のLOGが表示されます。どちらのリンクも同じページから、アソシエイトバーでリンクを作成しています。片方はTwitterカードが作成されて、もう一方は作成されない。残念ながら、これは運ゲーです。法則性を見つけ出そうとしましたが、無理でした。Amaoznのページが作成されたときにメタタグがうまく作成されない不具合があるか、Twitterがうまく読み取れないことがあるようです。これは1ユーザーがどうすることもできない範疇の問題です。ソースに直接記述があればまだ原因がわかったかもしれませんが、メタデータの直接的な記述もなく、プログラミングを少しかじった程度の私では、読み取ることはできませんでした。validatorでURLをかたっぱしから入力していき、うまくいったものをツイートすればTwitterカードを表示させることができます。数十回試してみてもうまくいかないものもあり、これに労力をかけるより、コンテンツにみがきをかける方がはるかに有意義な時間を過ごせると思います。ちなみに、「https://www.amazon.co.jp/dp/xxxxxxxxxx(商品ID)/」という形式のURLから作成したものが、一番成功率が高かったように感じます。Amazonアソシエイトのお問い合わせから、この問題を報告してみたので、回答があればみなさんにシェアしたいと思います。追記:回答が来ました!1週間くらいかかるかと思いきや、数時間で回答が来て驚きました。この質問の回答方法はすでにマニュアルにあるのでしょうね。回答内容はというと、それはTwitterカードはTwitterの仕様やで!せやからAmazonでは対応できへんのや。すまんな!といったものでした。今度はTwitterに聞いてみようかしら......。進展がありましたら、また追記します。