実装サンプル

Twitterから特定キーワードで検索し、それをデザインしてWordPressに表示したかったので作りました。
件数が多いのでjavascriptでもっと読むと表示出来るようにしています。
考え方は、Twitterからまず9件情報を取ってきて、HTMLで返却する。
それをjavascript側で、もっと読むを押すと3件づつ表示出来るようにする。

もっと読む機能

先にjavascirptを読み込ませて下さい。
content単位で表示制御をします。

<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script>
$(function(){
    $('.content:not(.content:first-of-type)').css('display','none');//一番上の要素以外を非表示
    $('.more').nextAll('.more').css('display','none');//ボタンを非表示
    $('.more').on('click', function() {
        $(this).css('display','none');//押したボタンを非表示
        $(this).next('.content').slideDown('fast');
        $(this).nextAll('.more:first').css('display','block'); //次のボタンを表示
    });
});
</script>

WordPressフック関数表示機能

記事には以下のコードを記載するとTwitterキーワード検索&HTML生成メソッドが呼び出されます。
keywordを指定してあげると検索ワードを変更出来ます。

[twittertag keyword="asklife.info"]

Twitterキーワード検索機能

function.phpに以下の実装を追加してフック関数を作る。
twitteroauth.phpは公式のSDKです。

function twittertag_func($atts) {
	require_once('twitteroauth.php');
	
	//Twitterで検索するワード
	$key = $atts[keyword];
	 
	//オプション設定
	$options = array('q'=>$key,'count'=>'9','lang'=>'ja');
	 
	//twitterAppsで取得
	$consumerKey = '***';
	$consumerSecret = '***';
	$accessToken = '***';
	$accessTokenSecret = '***';
	    
	$twObj = new TwitterOAuth(
	    $consumerKey,
	    $consumerSecret,
	    $accessToken,
	    $accessTokenSecret
	);
	$json = $twObj->OAuthRequest(
	    'https://api.twitter.com/1.1/search/tweets.json',
	    'GET',
	    $options
	);
	$jset = json_decode($json, true);
	 
	//エラーが出ないように
	$tmpHtml = "";
	
    return 
		'<div id="box">'.
		    '<a href="http://twitter.com/'.$jset['statuses'][0]['user']['screen_name'].'">'.
		    '<img src="'.$jset['statuses'][0]['user']['profile_image_url'].'" align="left">'.
		    '<p>'.$jset['statuses'][0]['user']['name'].' '.$jset['statuses'][0]['user']['screen_name'].'</p>'.
		    '</a>'.
		    '<p>'.$jset['statuses'][0]['text'].'</p>'.
	    '</div>'.
		'<div id="box">'.
		    '<a href="http://twitter.com/'.$jset['statuses'][1]['user']['screen_name'].'">'.
		    '<img src="'.$jset['statuses'][1]['user']['profile_image_url'].'" align="left">'.
		    '<p>'.$jset['statuses'][1]['user']['name'].' '.$jset['statuses'][1]['user']['screen_name'].'</p>'.
		    '</a>'.
		    '<p>'.$jset['statuses'][1]['text'].'</p>'.
	    '</div>'.
		'<div id="box">'.
		    '<a href="http://twitter.com/'.$jset['statuses'][2]['user']['screen_name'].'">'.
		    '<img src="'.$jset['statuses'][2]['user']['profile_image_url'].'" align="left">'.
		    '<p>'.$jset['statuses'][2]['user']['name'].' '.$jset['statuses'][2]['user']['screen_name'].'</p>'.
		    '</a>'.
		    '<p>'.$jset['statuses'][2]['text'].'</p>'.
	    '</div>'.
    '<div class="more">もっと読む</div>'.
    '<div class="content">'.
		'<div id="box">'.
		    '<a href="http://twitter.com/'.$jset['statuses'][3]['user']['screen_name'].'">'.
		    '<img src="'.$jset['statuses'][3]['user']['profile_image_url'].'" align="left">'.
		    '<p>'.$jset['statuses'][3]['user']['name'].' '.$jset['statuses'][3]['user']['screen_name'].'</p>'.
		    '</a>'.
		    '<p>'.$jset['statuses'][3]['text'].'</p>'.
	    '</div>'.
		'<div id="box">'.
		    '<a href="http://twitter.com/'.$jset['statuses'][4]['user']['screen_name'].'">'.
		    '<img src="'.$jset['statuses'][4]['user']['profile_image_url'].'" align="left">'.
		    '<p>'.$jset['statuses'][4]['user']['name'].' '.$jset['statuses'][4]['user']['screen_name'].'</p>'.
		    '</a>'.
		    '<p>'.$jset['statuses'][4]['text'].'</p>'.
	    '</div>'.
		'<div id="box">'.
		    '<a href="http://twitter.com/'.$jset['statuses'][5]['user']['screen_name'].'">'.
		    '<img src="'.$jset['statuses'][5]['user']['profile_image_url'].'" align="left">'.
		    '<p>'.$jset['statuses'][5]['user']['name'].' '.$jset['statuses'][5]['user']['screen_name'].'</p>'.
		    '</a>'.
		    '<p>'.$jset['statuses'][5]['text'].'</p>'.
	    '</div>'.
    '</div><!--/content-->'.
    '<div class="more">もっと読む</div>'.
    '<div class="content">'.
		'<div id="box">'.
		    '<a href="http://twitter.com/'.$jset['statuses'][6]['user']['screen_name'].'">'.
		    '<img src="'.$jset['statuses'][6]['user']['profile_image_url'].'" align="left">'.
		    '<p>'.$jset['statuses'][6]['user']['name'].' '.$jset['statuses'][6]['user']['screen_name'].'</p>'.
		    '</a>'.
		    '<p>'.$jset['statuses'][6]['text'].'</p>'.
	    '</div>'.
		'<div id="box">'.
		    '<a href="http://twitter.com/'.$jset['statuses'][7]['user']['screen_name'].'">'.
		    '<img src="'.$jset['statuses'][7]['user']['profile_image_url'].'" align="left">'.
		    '<p>'.$jset['statuses'][7]['user']['name'].' '.$jset['statuses'][7]['user']['screen_name'].'</p>'.
		    '</a>'.
		    '<p>'.$jset['statuses'][7]['text'].'</p>'.
	    '</div>'.
		'<div id="box">'.
		    '<a href="http://twitter.com/'.$jset['statuses'][8]['user']['screen_name'].'">'.
		    '<img src="'.$jset['statuses'][8]['user']['profile_image_url'].'" align="left">'.
		    '<p>'.$jset['statuses'][8]['user']['name'].' '.$jset['statuses'][8]['user']['screen_name'].'</p>'.
		    '</a>'.
		    '<p>'.$jset['statuses'][8]['text'].'</p>'.
		'</div>'.
    '</div><!--/content-->'	
    ;
}
add_shortcode('twittertag', 'twittertag_func');

参考
http://gimmicklog.main.jp/jquery/67/