ポータルサイトを作成する際に各店舗のブログ記事の新着情報を表示させたいなぁって事ありますよね?できちゃいますよ。
はじめに
ポータルサイトでは各お店ごとに新着情報を表示させてあげることでお店側の集客に効果的になります。今回はそのカスタマイズ方法をご紹介させて頂きます。
注意事項
feed情報を取得するやり方のご紹介ですのでホームページ側の新着情報を取得出来ない場合があります
今回やりたい事
- カスタムフィールドを使ってfeed情報の入力枠を1つ作る
- テンプレートにfeed情報を表示させる内容を加える
たったこれだけです。では早速やってみましょう!
まずはカスタムフィールドを用意
簡単にカスタムフィールドが使えるCustom Field Suite
とりあえず今回はfeedだけなので単一行テキストで作成しておきます。
feedtest
分かりやすいようにこのように名前をつけておきます。
入力側を用意
今回はfeed情報でアメブロを利用される方もいらっしゃるでしょうから、その辺りを考慮します。
アメブロのRSS内にあるPRを削除してワードプレスに表示させる方法
この記事内の情報をベースに使ってみます。
<?php include_once(ABSPATH . WPINC . '/feed.php'); $postfeed = $cfs->get('feedtest');//ここにカスタムフィールドの値を入力 $display_posts_count = 5; $get_posts_count = 10; $ameblo_feed = fetch_feed($postfeed//RSSフィード1 ); $counter = 0; if (!is_wp_error( $ameblo_feed ) ) : $maxitems = $ameblo_feed->get_item_quantity($get_posts_count); $feed_items = $ameblo_feed->get_items(0, $maxitems); endif; ?> <ul id="ul_list"> <?php if ( $feed_items == 0 ) echo ' <li>現在新しい記事はありません</li> '; else foreach ( $feed_items as $item ) : if( !preg_match('/^PR:/', $item->get_title() ) && $counter < $display_posts_count ): ?> <li><?php echo $item->get_date('Y-m-d'); ?> <a href="<?php echo $item->get_permalink(); ?>" target="_blank"><?php echo $item->get_title(); ?></a></li> <?php $counter++; endif; endforeach; ?> </ul>
以上でwordpressのカスタムフィールドで入力したfeed情報を表示させる方法の説明を完了致します。
さいごに
一歩一歩進んでいる進んでいる感じがしました
最近はパイザにログインできる時間もなく、PHPを勉強する時間がなかったので使い方を忘れてしまっていました。やっぱり、人間やらない事や使わないようなことがあると忘れやすくなりますね。
今回のカスタマイズに関しては稼げる副業をするにあたって一歩前に進めた気がしました。
いくらググってもこのやり方は出てこなかったので、過去に勉強をしたことがここにきて役立ったので非常に嬉しかったです。
これからは同じように「こんな事がしたい」ってなった時に作れるように頑張っていきたいですね。