Google Blog検索のフィードから関連記事を取り出すテンプレート
Googleのブログ検索の結果のフィードを用いて、Google Ajax feedによる関連記事リスト出力するMTMLテンプレートです。
ここで使ったコードをそのままでのせておきます。自分の環境に応じて改変するなどしてみてください。Google API keyの取得は各自ですませておいてもらえばよいかと思います。
<MTEntryIfTagged> <MTSetVarBlock name="AddFeeds"> <MTEntryTags> feedControl.addFeed("https://www.google.co.jp/search?q=<$MTTagName normalize="1" encode_js="1" encode_url="1"$>&tbm=blg&output=atom", "<$MTTagName normalize="1" encode_js="1"$>"); </MTEntryTags></MTSetVarBlock> <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript"> google.load("feeds", "1"); function feedInit() { // create a feed control var feedControl = new google.feeds.FeedControl(); <mt:Ignore> feedControl.addFeed("https://www.google.co.jp/search?q=(keywords)&tbm=blg&output=atom" , "keywords"); </mt:Ignore> <$MTGetVar name="AddFeeds"$> feedControl.draw( document.getElementById("feed-ctrl"), { drawMode : google.feeds.FeedControl.DRAW_MODE_TABBED }); } google.setOnLoadCallback(feedInit); // --> </script> <h3>関連するブログ記事</h3> <div id="feed-ctrl">読み込んでいます...</div> </MTEntryIfTagged>
ブログ記事につけられている「タグ」をもとにして、JavaScriptの配列におさめて、それをキーワードにしてaddFeed()の値に渡しています。
その部分のテンプレートはわかりにくい解説が以下の記事にあります。
追記: addFeed()が個別に記述しないといけないようなので、MTEntryTagsのループ内でfeedControl.addFeed()を作成するように変更しました。
Trackbacks:0
- TrackBack URL for this entry
- https://www.markdiary.com/mt/app-pingback.cgi/75
- Listed below are links to weblogs that reference
- Google Blog検索のフィードから関連記事を取り出すテンプレート from maRk lab
Comments:0