Yahoo!ショッピングにはWebサービスというか、APIというか、まあ、そういうのが用意されていて、その中でも試そうと思ったのが、「コンテンツマッチ」というもの。
「Yahoo!デベロッパーネットワーク – ショッピング – コンテンツマッチアイテム」
指定したURLから文章を拾ってきて、その内容にあった商品をリストアップしてくるのだ。
個数は最大6個と少ないのがあれだけど、ブログパーツ的に利用するなら、まあこんなんでも大丈夫か。といった感じ。
ということで、WordPress用にプラグインを作成してみた。
これまで作ってきたプラグインとはちょっと作法が異なる。というのも、WordPress 2.8(だっけ?)で新設されたウィジェットという機能を使って作る。これを利用すると、少ないコード量でカンタンに作成できるのだ。
WordPressの管理画面でパラメーターの入力・保持ができる(データベースにちゃんとセーブ・ロードできる)ので、別途設定ファイルなどを作ったりする必要がないのはもちろんなんだけど、そのためのコードもたいへん少ない(これはプラグイン全般に言えるのかな。前に作ったときからはだいぶバージョンが進んでるので、ちょっとわからない)。
そんなこんなで、サイドバーに記事に関連した商品を表示するウィジェットをつけたのだけど、どのページを表示しても同じ結果になってしまう。
記事中に合ったものがないと、Yahoo!ショッピングの売れ筋商品を自動で表示してしまうからのようだ。
Yahoo!ショッピング内にこのブログに合った商品はあまりない、というか、コンテンツマッチのエンジンでうまいことしてくれるような内容になっていない、ということだろうか。
ほかのブログだとうまくいっているので、コードに間違いはないような気がするんだけど、どうだろう。
コーヒーでも飲んで、ちょっと気持ちを落ち着かせてから、続きをやろうと思う。コーヒーを入れるにはペーパードリップが手軽でおいしい、と思うのだけど、どうだろう。という感じでコーヒーを連呼すれば、コーヒー関連商品が出てきてくれないかなあ。テスト。
うーん。やっぱり、この記事でもだめみたい。
なんか、マッチした商品が出るような記事をアップしてみてください。>
boroniaさん。
お願いします。
まあ、あと、ウェブサービスに渡すURLに記事個別のURLは指定できるのだけど、たとえばトップページとか、カテゴリとかのページを渡すことができてない。
WordPressのテンプレートタグを調べたのだけど、現在表示しているページ、というものが見つからない。
テンプレートタグというのは、WordPressに用意されているさまざまな変数みたいなもの(動作としては関数なんだけど、ここではそういう考えで使用できる)。
get_permalink()
というのが、それかと思ったけど、たとえば、トップページで取得すると、そのページ内の一番下(ふるい)記事しか拾えないっぽい。
うーん。いろいろ手詰まり。
もしかして、HTMLの構造に問題があったりするのかな?
テーマを変えたら、するっとうまくいったりして。
そういえば、ページ内で取得する範囲をきめれれるらしいので、それを指定すればいいのかも。
ちょっと調べてみましょう。あと、なんか感想とか質問があればよろしくです。
コーヒーポットを洗ってなかったので、コーヒーはあとまわしに。
WordPressのテンプレートタグを使うことなく、普通にPHP自身で取得できることを失念しておりました。
それがわかった時点で問題なく動作することを確認。
今日は緑茶を飲んでいます。日本茶。急須は20年以上前に買ったものですが、これまた問題なく使えています。パステル調で3色の梅という柄がいまひとつなんですが、長く使っていると違和感がなくなってきました。ただ、この急須。右利き用なので、左利きの家人にとっては使いにくいのかもしれません。