コンピュータ」カテゴリーアーカイブ

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 以降から非推奨になっちゃいました。
続きを読む

nginx 1.0.0 が出てます

nginx高速、軽量な HTTP サーバ(かつリバースプロキシサーバ) nginx が開発開始から9年を経て、ようやくメジャーリリース 1.0.0 公開されました。
W3Tecs によれば、Apache, IIS についで第3位の6.8%のシェアを誇るまでになったそうです。
このサイトと私がやってるフォトブログ shot.dogmap.jp も、リバースプロキシサーバとして nginx を使用しています。

nginx の導入方法として過去にも何回かエントリ書いてますので、そちらも読んでやってください。

続きを読む

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 とか。

メール完結型 Twitter クライアント yabmin

メール完結型 Twitter クライアント yabmin

メール完結型 Twitter クライアント yabminちょっと前から、アルファテストに参加させてもらっていた メール完結型Twitterクライアント yabmin が、正式リリースされました。
最初にPCから登録する必要がありますが、それさえやっちゃえば、後はほとんどのことがメールからできちゃいます。

@msng によるリリースノートは、こちら。
メール送受信だけでTwitterを操作するサービス『yabmin』を公開しました – 頭ん中
続きを読む

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