WordPress Plugin」タグアーカイブ

Feed Template Customize

久しぶりに新規 WordPress Plugin を公開しました。
WordPress > Feed Template Customize « WordPress Plugins

このプラグインを使用すると RSS フィードや ATOM フィードのテンプレートを自由に変更できます。
それぞれ、以下のファイルがテーマフォルダ内にあるとフィードテンプレートとして使用します。

  • feed-atom.php atom フィード用テンプレート
  • feed-atom-comments.php atom コメントフィード用テンプレート
  • feed-rdf.php rdf フィード用テンプレート
  • feed-rss.php rss フィード用テンプレート
  • feed-rss2.php rss 2.0 フィード用テンプレート
  • feed-rss2-comments.php rss 2.0 コメントフィード用テンプレート

※上記ファイルがテーマフォルダ内に無い場合は WordPress 標準のフィードテンプレートが適用されます。

これらのテンプレートの元ファイルとしては、wp-include フォルダ内の同名のファイルをテーマフォルダ内にコピーして使用すれば良いでしょう。

元々、公開していたスニペットをプラグイン化しただけなんすけどね 🙂
各種フィード用テンプレートの変更

wp_remote_get のススメ

WordPress プラグインで外部サービスのAPIを叩く場合、以前は Snoopy 等のライブラリを include して行っていました。
# Snoopy が WordPress コアソースに含まれていたため。

しかし、WordPress 2.7 以降では wp_remote_get() という関数が追加されたため、もっぱらこれを使っています。
例えば Topsy の API を使って、パーマリンクに対して言及されたツイートを取得するには以下のようなコードを書けば実現できます。

$response = wp_remote_get('http://otter.topsy.com/trackbacks.json?url='.rawurlencode(get_permalink()).'&tracktype=tweet&perpage=50');
if( !is_wp_error( $response ) && $response["response"]["code"] === 200 ) {
	$response_body = json_decode($response["body"]);
	var_dump($response_body->response->list[0]);
} else {
	// Handle error here.
}

簡単でしょ?

以下、簡単に wp_remote_get の使い方
続きを読む

WordPressで、特定のエントリーについたコメントをCSVで一括DLできる方法とかないかな

Comment Downloader

WordPressで、特定のエントリーについたコメントをCSVで一括DLできる方法とかないかな@tunakko_ さんが、「WordPressで、特定のエントリーについたコメントをCSVで一括DLできる方法とかないかな」とか言ってたので、任意のエントリに着いたコメントの情報をタブ区切りテキストで一括してダウンロードできるプラグイン Comment Downloader を作ってみました。
カンマ区切りではなくタブ区切りなのは、コメント内にカンマが含まれていた時の処理が面倒くさかったため。面倒臭がりですいません。
ソース見てもらえば分かるんですが作りは単純です。
ログインしてないとコメント一覧をダウンロードできないようにしてあるので、勝手にダウンロードされる恐れは無いかと思われます。
このプラグインのダウンロードは以下から。
http://dl.dropbox.com/u/110305/comment-dl.zip

ダッシュボードで投稿一覧画面を表示すると、右端に「この投稿のコメントをダウンロード」ってリンクが表示されるので、それをクリックすると zip 形式で圧縮されたテキストファイルをダウンロードできます。
後は、それを Excel に食わせるなりなんなり好きにしてやってください。

Head Cleaner 1.4.2.x リリース

Head Cleaner をアップデートしました。
WordPress > Head Cleaner « WordPress Plugins

今回の追加機能は以下の2つ。

  • Last-Modified タグ出力オプション
  • パラノイアモードの搭載

パラノイアモードが、どんな機能かというと head 部だけでなく html 全体をなるべく小さくするように不要な改行や連続した空白を取り除いちゃう機能です。
ただ、このパラノイアモードは実験的な機能なので、不具合が出る場合は適用しないでください。
# どんな感じになるかは、当サイトの HTML ソースを見てみてください。

さて、当サイトのトップページがどれくらい小さくなるかというと

HeadCleaner off

45.0 KB
HeadCleaner on without paranoia mode

39.6 KB
HeadCleaner on with paranoia mode

36.4 kB

パラノイアモードオフの場合は12%、パラノイアモードをオンにすると19%サイズダウンしました!

当サイトでは gzip 圧縮が有効になっているため、実際に転送されるファイルのサイズは gzip 圧縮後のサイズになります。
あと Head Cleaner は自サイトの JS, CSS も最小化してくれるため、それらもまとめて見てみた方が良いでしょう。

HeadCleaner off

83.3 KB
HeadCleaner on without paranoia mode

72.3 KB
HeadCleaner on with paranoia mode

72.1 kB

パラノイアモードオフの場合は13.2%、パラノイアモードをオンにすると13.2%サイズダウンしました!
パラノイアモードあまり意味ない orz
続きを読む

WordPress 開発に便利なプラグイン Debug Bar

screenshot_0WordPress 3.1 から導入された管理バー。
僕は好きなんだけど、結構嫌いな人は多いみたいですね。
そんな人達に管理バーがあると便利だよって伝えたいエントリ。

まずは、以下の2つのプラグインをインストールしてみてください。

そうすると、管理バーの右端に「Debug」ってメニューが追加されるはずです。
これが相当便利。
続きを読む

WordPress で JSON 形式のデータを吐き出すプラグイン Feed JSON

WordPress で JSON, JSONP 形式のデータを吐き出すプラグイン WordPress › Feed JSON を公式プラグインディレクトリで公開しました。
ダウンロードは、以下から。
WordPress > Feed JSON « WordPress Plugins

このプラグインを導入することで、<script type="text/javascript" src="https://dogmap.jp/feed/json?callback=callback"></script> みたいな感じで呼び出してやれば、JSONP 形式で最新記事の一覧を取得できます。
これで、簡単に他サイトや静的HTML上に簡単に更新情報を表示できるようになります。
詳しいやり方は、以前のエントリを参考にしてください。
WordPress の更新情報を JSONP 形式で出力 : dogmap.jp
続きを読む

旧サイトから新サイトへ 301 Redirect する

とある WordPress サイトの引越しを手伝った時、サイト引越しに伴ってドメイン名を変更したいという要望がありました。
パーマリンクの命名規則等は変わらないんで、あくまでもドメイン名だけ変更するということだったので、簡単なプラグインを作って、旧サイトから新サイトへ 301 リダイレクトするようにしました。

301リダイレクト後は Google さんとかが、ちゃんと処理してくれるので SEO 的には問題ないはずと思ってたんですが、検索結果の移行が中々進まない時は焦りました。
すべての処理が終わって、検索順位が回復するには1週間弱くらいはかかるようです。
ドメイン名変更を 301 リダイレクトで処理しようとしてる方は、焦らないでじっと待っててくださいね。
via. 301リダイレクトでPageRankはどのくらい失われる? | 海外SEO情報ブログ

続きを読む

Yet Another Related Posts Plugin の SQL 文を高速化

昨年、め組のVPS に移行した後、チマチマとパフォーマンスチューニングを行ってきたのですが、そこで得られた情報をシェアしておきます。

VPS に移行したことで共用レンタルサーバでは弄れなかった MySQL や Apache の設定なんかも弄れるようになったので、MySQL で実行に時間のかかっているクエリーをログに残してチューニングするようなことも手軽にできます。
スロークエリログの取得方法は、以下を参考に。
漢(オトコ)のコンピュータ道: MySQL 5.1のスロークエリログ

さて、このブログでの関連記事表示には Yet Another Related Posts Plugin を使用しています。
実行に2秒以上かかったクエリーをログに残したところ Yet Another Related Posts Plugin が生成したクエリーがログに記録されたので、これを修正しました。
続きを読む

screenshot

Posts List

screenshot今まで書いた記事一覧を生成するショートコードを提供するプラグインです。
@kai4den さんが、こんなことを言っていたのでサクッと作りました。
さくら VPS への引っ越し祝いと言うことで。

ダウンロードは以下から
WordPress Plugins/JSeries » Posts List (記事一覧作成)

ダウンロードした posts-list.php を wp-content/plugins/ ディレクトリに保存して、プラグインを有効化すると使用できるようになります。
デモは、このサイトの Archives ページに置いておきます。
続きを読む

Head Cleaner 1.4.0.x リリース

久しぶりのリリース告知。
最近、プラグインをアップデートしてもリリース告知してませんでした。すいません。
さて、WordPress サイトの <head> の中身と、フッタ領域を整形する Head Cleaner をバージョンアップしたのでお知らせします。
WordPress > Head Cleaner « WordPress Plugins

今回の目玉は「CSS に含まれる画像の URL を、データスキーマ URI に変換する」機能の追加。
これは、Firefox、Safari、Opera などのデータスキーマURIに対応するブラウザからアクセスがあった場合、CSS内の画像ファイルをデータスキーマURIに変換して、HTTPリクエストを減らしちゃおうっていう機能です。
Google が最近公開した Apache モジュール mod_pagespeed にも実装されてる技術ですね。
対象になる画像ファイルは base64 エンコード後のサイズが 4096 byte 以内のファイルだけです。
小さいアイコンファイルがいっぱい入っている css だと結構効果あるかも、ないかも。