自宅サーバの整理箱

自宅サーバを構築しwordpress,fedora,CentOSの作業メモ

*

twitterのつぶやきを検索してwordpressで表示するプラグイン

   

ツイッターのつぶやきを検索して、ワードプレスの記事欄へ表示するプラグインを作成しましたので公開します。

Twitterアプリケーションの作成・登録

Twitterにアクセスするためにまずは登録します。
twitter developersにアクセスします。
>>twitter developers

登録後はDetailタブを選択して以下の4項目を取得します。
「Consumer key」
「Consumer secret」
「Access token」
「Access token secret」

Twitter PHP認証ライブラリ「twitteroauth」を設置

Twitterの認証用ライブラリ「twitteroauth」を使います。
GitHubからダウンロードをします。画面右側のDownloadZipボタンを押下します。
>>https://github.com/abraham/twitteroauth

ダウンロードしたファイルを解凍し、「twitteroauth」フォルダを
サーバへ配置します。ここでは例として以下に保存します。
・/var/www/twitteroauth

格納されているファイルは2ファイルです。
・twitteroauth/OAuth.php
・twitteroauth/twitteroauth.php

Twitterを検索してPOSTするプラグインを配置

ソースは以下になります、下部にダウンロードを用意しましたので
こちらからダウンロードもできます。ダウンロード後は下記箇所を
1つ目の手順で取得したキーに書き換えてください。

47行目~50行目
$consumerKey = “xxx”;
$consumerSecret =”xxx”;
$accessToken = “xxx”;
$accessTokenSecret = “xxx”;

<?php
/*
Plugin Name: WP-Twitter-Search
Plugin URI: http://www.windows78.net/
Description: つぶやきを検索して表示します。
Version: 0.1
Author: KEIKI
Author URI: http://www.windows78.net/
*/

/****************
Active Hook
****************/
function active_wp_twitterSearch(){
        add_option('wp_twitterSearch','1','active the plugin');
}

/****************
Deactive Hook
****************/
function deactive_wp_twitterSearch(){
    delete_option('wp_twitterSearch');
}

/****************
Main
****************/
function render_twitterSearch($text) {

	require_once("/var/www/twitteroauth/twitteroauth.php");

	/* 検索ワード取得 */
	preg_match_all('|[tweet](.*?)[/tweet]|su',$text,$match,PREG_SET_ORDER);
	foreach($match as $val){
		$words = $val[0];
		$word = str_replace("[tweet]", "", $words);
		$word = str_replace("[/tweet]", "", $word);

		if( $word == '' ){
		        /* 記事タイトルを検索ワードに設定 */
		        $word = the_title( '' , '' , false );
		}else{
		        /* そのまま検索ワードとして有効 */
		}

		$consumerKey = "xxxxx";
		$consumerSecret = "xxxxx";
		$accessToken = "xxxxx";
		$accessTokenSecret = "xxxxx";

		$twObj = new TwitterOAuth($consumerKey,$consumerSecret,$accessToken,$accessTokenSecret);
		$andkey = $word;
		$options = array('q'=>$andkey,'count'=>'15');

		$json = $twObj->OAuthRequest(
		    'https://api.twitter.com/1.1/search/tweets.json',
		    'GET',
		    $options
		);

		$jset = json_decode($json, true);
		foreach ($jset['statuses'] as $result){
		    $name = $result['user']['name'];
		    $link = $result['user']['profile_image_url'];
		    $content = $result['text'];
		    $updated = $result['created_at'];
		    $time = $time = date("Y-m-d H:i:s",strtotime($updated));

$pout = <<< EOD
<div class="tweet-box">
<div class="tweet-sumbox">
<img src="{$link}">
</div>
<div class="tweet-content">
{$content}
</div>
</div>
EOD;

			$outtable = $outtable .$pout;
		}
		$text = str_replace($words ,$outtable ,$text);
	}
	return $text;
}

/* Content Filtter */
add_filter('the_content', 'render_twitterSearch', 10);

/* Plugin ON/OFF */
register_activation_hook(__FILE__,'active_wp_twitterSearch');
register_deactivation_hook(__FILE__,'deactive_wp_twitterSearch');

?>

記事に下記のショートコードを挿入することで表示します。
ショートコードで囲んだ部分は「検索キーワード」です。省略した場合は記事タイトルが検索キーワードに自動で設定されます。

ショートコードの記載方法
[tweet]検索したキーワード[/tweet]

スタイルシートはサンプルですが下記をカスタマイズして下さい。

/* twitter search */
.tweet-box {
        clear: both;
        height: 60px;
        margin: 2px;
        border: 1px solid #f1f1f1;

}
.tweet-sumbox {
        padding: 5px;
        float: left;
        height-max: 150px;
        width: 100px;
}
.tweet-content {
        font-size: 13px
}

ダウンロードはこちらに用意しました。
■WP-Tweet-Search


■twitteroauth

↑GitHubで配布されていますので、サンプルとして掲載します。

WP-Tweet-Searchのデモンストレーション

■表示サンプルはこちらになります。
キーワードは「自宅サーバ」です
[tweet]自宅サーバ[/tweet]
ではでは。

 - Word Press, アフィリエイト

 Total 412 views