HPに各スタッフのアメブロのタイトルを新着順に表示させる
2016/03/14
あるお店の各スタッフのアメーバブログの更新情報をホームページに乗せることになり、対応したのでメモ。
図にするとこんな感じ。
つまり、
各スタッフのブログはアメブロでそれぞれ管理してるけどお店のホームページには最新の更新情報を記載したいという要望。
WordPressの初心者が独学でホームページ作成したときの技術メモ
2016/03/14
あるお店の各スタッフのアメーバブログの更新情報をホームページに乗せることになり、対応したのでメモ。
図にするとこんな感じ。
つまり、
各スタッフのブログはアメブロでそれぞれ管理してるけどお店のホームページには最新の更新情報を記載したいという要望。
これ。
$staff_array["スタッフAのアメブロID"]="スタッフAの名前"; $staff_array["スタッフBのアメブロID"]="スタッフBの名前"; $staff_array["スタッフCのアメブロID"]="スタッフCの名前"; $staff_array["スタッフDアメブロID"]="スタッフDの名前"; $i=0; foreach( $staff_array as $key=>$val ){ $ameblo_id = $key; $rss = 'http://feedblog.ameba.jp/rss/ameblo/'. $ameblo_id .'/rss20.xml'; $ameblo_data = simplexml_load_file($rss, 'SimpleXMLElement', LIBXML_NOCDATA); $ameblo_title = $ameblo_data->channel->item[0]->title; $ameblo_post_date = date('Y.m.d',strtotime($ameblo_data->channel->item[0]->pubDate)); $ameblo_link = $ameblo_data->channel->item[0]->link; $array[$i][0] = $val; //スタッフの名前 $array[$i][1] = strtotime($ameblo_data->channel->item[0]->pubDate); //更新日時 $array[$i][2] = $ameblo_data->channel->item[0]->title; //ブログタイトル $array[$i][3] = $ameblo_data->channel->item[0]->link; //リンク $i++; } // 日付順に並び替え foreach($array as $key => $row){ $dummy[$key] = $row[1]; } array_multisort($dummy,SORT_DESC,$array); // 4件分表示 for($i = 0; $i < 4; $i++) { echo "<a href='" . $array[$i][3] . " '>" . date("Y/m/d", $array[$i][1]) . $array[$i][0] . $array[$i][2]. "</a>"; }
ブログのデータはrssを使ってデータブログデータを取得します。
まず、配列$staff_arrayにスタッフ分のアメブロIDとスタッフ名を入れます。
各スタッフの最新ブログ(rssデータの一件目)の日付、タイトル、urlを取得して配列$arrayに格納していきます。
その後、array_multisort関数を使えば簡単に日付順に並べることができます。
最後に出力して終わり。
ただし、このコードだと同一人物が連続してブログを投稿しても、その人の最新の一件しか表示されません。言い方を変えれば同一人物ばっかりブログを更新してもその人だけで埋まることはありません。
レスポンシブのWebサイトを作成するときウィンドウ幅を見ながら画面表示をみたいの …
簡単に無料でネットショップが開設できるサービス「BASE」。無料ってのがとても魅 …
Google AdSenseを導入したので手順のメモ。Google Adsens …
データを納品する際の資料作成時など、ファイルの一覧表を作りたいことがたまーにあり …
リモート会議するときに使用してたマイクスピーカーのAvaya B109が突然動か …
bootstrap便利です。WEB製作でレスポンシブ対応するときこれを使ってます …
PhotoShopの初心者の私です。今回、画像に写っている邪魔な物体を削除するの …
以前LikeBoxを使った以下の記事を書いたのですが2015/6/23日をもって …
ファイルを解凍するとき通常解凍ソフトを使って解凍します。 しかし最近はいろんな圧 …
「Ctrl+C」 でクリップボードにコピーできるのは通常1つで、1つ前にコピーし …