WordPress」カテゴリーアーカイブ

WordPress でカテゴリのリンクを変更する

WordPress でカテゴリのリンクを標準以外に変更する方法です。
まぁ、それ専用のプラグインとかも探せば有ると思うんですが

http://example.com/?cid=xx 形式に変更する

例えば、カテゴリのリンクを http://example.com/?cid=xx とかって形式でも表示できるようにするには、以下のようにして parse_query フィルタを使うと良いです。
# functions.php とかに追加してやってください。

class add_category_link_to_different_link {
	function __construct(){
		add_filter('query_vars', array(&$this, 'add_query_vars'));
		add_action('parse_query', array(&$this, 'parse_query'));
	}
	public function add_query_vars($qvars) {
		$qvars[] = 'cid';
		return $qvars;
	}
	public function parse_query($query) {
		$cat_id  = (int) $query->query_vars['cid'];
		if ( !(empty($cat_id) || $cat_id === 0) ) {
			$url = get_category_link($cat_id);
			if ( !empty($url) && $url !== FALSE ) {
				$query->query_vars["cat"] = $cat_id;
				$query->is_404 = false;
			} else {
				$query->set_404();
			}
		}
		return $query;
	}
}
new add_category_link_to_different_link;

続きを読む

WordPress でスニペットを簡単に管理する方法

昨今の WordPress 人気にあやかって、「WordPress スニペット」とか「WordPress functions.php カスタマイズ」とかで検索すると、functions.php を使ってできる簡単なカスタマイズ方法が出てきます。
これらを functions.php で管理してるとテーマを変更した時とか、コピペしなおさなきゃ行けなくなって面倒くさいことこの上ありません。
このカスタマイズやっぱ要らないなーとか思っても、すでにどこに書いていたか分からなくなっちゃうなんてこともしばしば。
そんなわけで、私はこれらのスニペットについては簡単なプラグインを作って管理してます。
# 昔は my-hacks.php ってファイルを使って管理できたんですが、WordPress 2.8 以降から非推奨になっちゃいました。
続きを読む

WordPress で URL をすべて相対 URL にする方法

WordPress で SSL 対応した時に、プラグインが書き出すリンクやコンテンツ内のリンクが https:// にならずに哀しくなることはありませんか?
そんなときは、こんな感じのコードを functions.php に書いておけば、一発で全てのリンクを相対URLに変更してくれますよ。

class relative_URI {
	function relative_URI() {
		add_action('get_header', array(&$this, 'get_header'), 1);
		add_action('wp_footer', array(&$this, 'wp_footer'), 99999);
	}
	function replace_relative_URI($content) {
		$home_url = trailingslashit(get_home_url('/'));
		return str_replace($home_url, '/', $content);
	}
	function get_header(){
		ob_start(array(&$this, 'replace_relative_URI'));
	}
	function wp_footer(){
		ob_end_flush();
	}
}
new relative_URI();

ob_start() 関数を使っているので、ob_start() を使っているプラグインとは相性が悪いかもしれません。
# 例えば、私の作った Head Cleaner とか。

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

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

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

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

WordPress 3.1 がリリースされました

WordPress › WordPress 3.1, lots of fun
WordPress 3.1 が正式リリースされたので、早速バージョンアップしました。
# つっても、ずいぶん前から 3.1 RC で運用してたんですが
今回は RC5 まで行ってしまうくらいの長い RC 期間を経てのリリースです。

個人的には、ログイン時にサイト上部に表示される Admin Tool Bar がお気に入り。
WordPress 3.1 の新機能については、おでこんの所とか、WordPants とか、WordPress Codex とかで勉強すれば良いと思うよ。

WordPress 日本公式キャラクター

WordPress 日本公式キャラクター先日、行われた WordCamp Fukuoka 2011- で WordPress 日本公式キャラクターが、発表されました。
名前はまだ決まっていないので、これから公募するらしいです。

もふもふしていて可愛い。
「僕と契約して、ブロガーになってよ」
via. WordPress | 日本語 » WordPress 日本公式キャラクターが登場

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
続きを読む

WordPress サイトに nginx を導入する

nginxWordPress サイトにリバースプロキシサーバとして nginx を導入する際の tips。
nginx (エンジンエックス)とは、オープンソースの軽量高性能なHTTPサーバ且つリバースプロキシです。

従来の HTTP サーバのようにリクエストの処理をスレッドで行わず、非同期のアーキテクチャーを用いるイベントループモデルのサーバです、
そのため、多数のリクエストが着た場合に実行スタックをコピーする必要があるスレッドモデルのサーバと違い、1プロセスでリクエストを処理できるため、メモリ消費量が極端に少なくてすむという利点があります。
# 話題の node.js もイベントループモデルですね。

さて、そんな nginx を WordPress サイトに導入する際の tips です。
続きを読む

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

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

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

続きを読む

varnish

WordPress サイトに Varnish を導入する

varnishWordPress サイトにリバースプロキシサーバ Varnish を導入する際の tips。
リバースプロキシって何?って人は、以下のURL辺りを参考にしてください。
Insider's Computer Dictionary [リバースProxy] − @IT

通常は複数台あるバックエンドのサーバを取りまとめるロードバランサー的な使われ方をします。
しかし、一台しかサーバが無い場合でも、フロントにリバースプロキシを置いてリクエストを受けて、バックエンドで動作している Web サーバから受け取った動的コンテンツをキャッシュさせて負荷を軽減させることもできます。
この構成を取っておけば、負荷が増えてサーバがきつくなったときに、わりと手軽にアプリケーションサーバを分離できますね。
# 個人ブログで、そこまで行くとは思いませんが
続きを読む