WordPressの勉強がてら

WordPressの初心者が独学でホームページ作成したときの技術メモ

WordPressの勉強がてら

HPに各スタッフのアメブロのタイトルを新着順に表示させる

      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関数を使えば簡単に日付順に並べることができます。

最後に出力して終わり。

ただし、このコードだと同一人物が連続してブログを投稿しても、その人の最新の一件しか表示されません。言い方を変えれば同一人物ばっかりブログを更新してもその人だけで埋まることはありません。

 

 - その他Tips

  • このエントリーをはてなブックマークに追加

  関連記事

パスワード自動生成サイト

WordPressのセキュリティ強化のため、adminユーザを削除してパスワード …

マイクスピーカーAbaya B109が矢印表示がでて動かなくなったけど解決

リモート会議するときに使用してたマイクスピーカーのAvaya B109が突然動か …

ウィンドウのサイズを確認しながらデバッグする方法

レスポンシブのWebサイトを作成するときウィンドウ幅を見ながら画面表示をみたいの …

サイトにFacebookページを埋め込む方法–LikeBoxは廃止。Page Pluginになります–

以前LikeBoxを使った以下の記事を書いたのですが2015/6/23日をもって …

WindowsからMacに移行した。いろいろ大変だった。

Windowsマシンを使って十数年、この度マシンをMacに移行することになりまし …

ネットショップBASE(ベイス)のAPIを使って商品一覧を表示させてみた

簡単に無料でネットショップが開設できるサービス「BASE」。無料ってのがとても魅 …

Adobe Bridgeで画像ファイルの名前を一括変換する方法

デジカメの画像データなどファイル名を管理する時、「好きな名前」+「通し番号」を付 …

クリップボードの履歴を保存できるフリーソフト

「Ctrl+C」 でクリップボードにコピーできるのは通常1つで、1つ前にコピーし …

フォルダ内のファイル一覧をテキストデータに落とす方法

データを納品する際の資料作成時など、ファイルの一覧表を作りたいことがたまーにあり …

page plugin(facebook埋め込み)をレスポンシブ対応する

2015年6月にfacebookをwebサイトに埋め込むには「like box」 …