<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>Satake Studio Developer's Blog</title>
	<atom:link href="http://dev.satake7.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://dev.satake7.net</link>
	<description>サタケスタジオ 開発者ブログ</description>
	<pubDate>Sat, 04 Sep 2010 00:45:29 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>WordPress3：カスタムメニュー</title>
		<link>http://dev.satake7.net/blog/2010/09/04/759/</link>
		<comments>http://dev.satake7.net/blog/2010/09/04/759/#comments</comments>
		<pubDate>Sat, 04 Sep 2010 00:43:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[WP3]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/09/04/759/</guid>
		<description><![CDATA[
　
WordPress3にデフォルトでついてくる「Twenty One」テンプレートでカスタムメニューというやつが使えます。
あの例のグローバル･ナビゲーションというやつです。
メニュー階層があるとドロップダウンメニュ [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="/files/2010/09/wordpress-jon-rognerud-150x150.jpg" alt="wordpress"  width="150" height="150"  /></div>
<p>　<br />
WordPress3にデフォルトでついてくる「Twenty One」テンプレートでカスタムメニューというやつが使えます。<br />
あの例のグローバル･ナビゲーションというやつです。<br />
メニュー階層があるとドロップダウンメニューにしてくれて憂い奴なんですが、どうやって階層にすればいいの、と迷ったので、画面を貼っときます。<br style="clear:both;" /></p>
<div class="img-shadow"><a href="/files/2010/09/scn-1.gif" class="thickbox"><img src="/files/2010/09/scn-1.gif" alt=""  width="485" height="375"  /></a></div>
<p style="clear:both;">カスタムリンクをドラッグ＆ドロップするときに、少し右の方へずらせばいいんです。</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/09/04/759/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Memo：タブの吐き出し・・・9/3</title>
		<link>http://dev.satake7.net/blog/2010/09/03/755/</link>
		<comments>http://dev.satake7.net/blog/2010/09/03/755/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 17:52:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Etc]]></category>

		<category><![CDATA[Tips]]></category>

		<category><![CDATA[WP Tips]]></category>

		<category><![CDATA[float:none]]></category>

		<category><![CDATA[max-width]]></category>

		<category><![CDATA[PHP Exec]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/09/03/755/</guid>
		<description><![CDATA[
　
タブを開いてばかりでブラウザが片付かないのでここで吐き出しておく。
ところで、Googleの画像検索って、以前はもう少しお上品だと思ったんだけど、Baiduや Naverの悪い影響か、「吐き出し」みたいな検索でも結 [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="/files/2010/09/cleanuptheworld-120x150.jpg" alt="cleanuptheworld"  width="120" height="150"  /></div>
<p>　<br />
タブを開いてばかりでブラウザが片付かないのでここで吐き出しておく。<br />
ところで、Googleの画像検索って、以前はもう少しお上品だと思ったんだけど、Baiduや Naverの悪い影響か、「吐き出し」みたいな検索でも結構アダルティなグロい画像を出してくるので、要注意！<br />
<br style="clear:both;" /></p>
<ol>
<li><a href="http://mb.blog7.fc2.com/blog-entry-62.html" target="_blank">clearは「floatの解除」ではない</a><br />
そうだ、そうだ。『floatの解除は float:none』</li>
<li><a href="http://www.htmq.com/style/max-width.shtml" target="_blank">max-width</a><br />
max-widthを指定したら、＜img width=&#8221;nn&#8221; /＞が効かなくなったので、注意。style=&#8221;width:nnpx;&#8221;は大丈夫。</li>
<li><a href="http://priyadi.net/archives/2005/03/02/WordPress-php-exec-plugin/" target="_blank">Wordpress PHP Exec Plugin</a><br />
WordPressの投稿やページの中で PHPのコードを書けるようにするプラグイン。勝手に入るやつがポピュラーだけど、入れたいところに特別なタグを書くやり方の方が好きです。<br />
[php]</p>
<phpcode>
<?php<br />
echo "Current date and time: ";<br />
echo date("l dS of F Y h:i:s A");<br />
?>
</phpcode>
[/php]
</li>
<li><a href="http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/next_post_link" target="_blank">テンプレートタグ/next post link</a><br />
3番目と4番目のパラメータはめったに使わないのでメモ。<br />
[code]<br />
in_same_cat<br />
　　(論理値) 表示している記事と同じカテゴリーの次の記事を表示するかどうかを設定。<br />
　　TRUE の場合、同じカテゴリーの記事だけが表示されます。FALSE (デフォルト)</p>
<p>excluded_categories<br />
　　(文字列) 表示させたくない記事のカテゴリー ID の番号。<br />
　　複数のカテゴリーを除外する場合は コンマを使って区切るようです (例: &#8216;1, 5, 15&#8242;)。<br />
[/code]
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/09/03/755/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WordPress3：あとで書くかもしれないTips</title>
		<link>http://dev.satake7.net/blog/2010/09/01/749/</link>
		<comments>http://dev.satake7.net/blog/2010/09/01/749/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 21:30:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[WP Tips]]></category>

		<category><![CDATA[WP3]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/09/01/749/</guid>
		<description><![CDATA[
　
ブラウザのタブが溜まりまくりなので、さっさと整理するためにここで一度吐き出しておきます。
といいつつ、書く前に閉じちゃったものがたくさんあって、残っているのは Twitter Tools という大物だけなんですけど [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="http://farm4.static.flickr.com/3290/2986187518_24400c3e74_m.jpg" alt="" /></div>
<p>　<br />
ブラウザのタブが溜まりまくりなので、さっさと整理するためにここで一度吐き出しておきます。<br />
といいつつ、書く前に閉じちゃったものがたくさんあって、残っているのは Twitter Tools という大物だけなんですけどね。<br />
<br style="clear:both;" /></p>
<ul>
<li>Twitter Toolsの設定の仕方<br />
BASIC認証じゃなくなって、ハンパなく設定が難しくなりました。「<a href="http://itblog.posifeel.com/archives/482.html" target="_blank">WordPress　Twitter Toolsバージョンアップ</a>」を見てやったのでなんとかなりましたが、末端のユーザに Twitter Deverolers登録させるのはイカンでしょう。<br />
以前は、「<a href="http://angeblanc.net/2008/06/08/twitter-tool/" target="_blank">WPとTwitterで遊んでみる。Twitter Tools</a>」に書かれているように、ユーザ名とパスワードを登録するだけでOKでした。
</li>
<li>Twitter Tools2.1.1プラグインの日本語版配布<br />
「<a href="http://lovelog.eternal-tears.com/wordpress/wp-plugin-ja/twitter-tools211-ja/#" target="_blank">Twitter Tools2.1.1プラグインの日本語版配布</a>」から。moファイルしか配布されないので、翻訳を修正したい人は、<a href="http://dev.satake7.net/blog/2010/09/01/739/" target="_blank">moファイルを修正</a>をどうぞ。
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/09/01/749/feed/</wfw:commentRss>
		</item>
		<item>
		<title>jQuery：Inside Scroll</title>
		<link>http://dev.satake7.net/blog/2010/09/01/748/</link>
		<comments>http://dev.satake7.net/blog/2010/09/01/748/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 21:21:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/09/01/748/</guid>
		<description><![CDATA[
　
ページ内リンクをスムーズスクロールするjQueryプラグイン(Inside Scroll)を使わせていただいています。
ページ内リンクをクリックすると、シュルシュルとスムーズにスクロースする、アレです。
この機能は [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="/files/2010/09/jquery-1.png" alt="jquery"  width="157" height="145"  /></div>
<p>　<br />
<a href="http://www.keyton-co.jp/demo/demo16/index.htm" target="_blank">ページ内リンクをスムーズスクロールするjQueryプラグイン(Inside Scroll)</a>を使わせていただいています。<br />
ページ内リンクをクリックすると、シュルシュルとスムーズにスクロースする、アレです。<br />
この機能はもちろん大変ありがたいですが、<a href="http://www.keyton-co.jp/demo/demo16/index.htm" target="_blank">このページ</a>は、jQuery Easing Plugin のエフェクトの確認として秀逸です。<br />
アレどうやって動くんだっけと疑問になったときは、ここで確認です。</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/09/01/748/feed/</wfw:commentRss>
		</item>
		<item>
		<title>jQuery：可変グリッドレイアウト(jquery.vgrid.js)</title>
		<link>http://dev.satake7.net/blog/2010/09/01/747/</link>
		<comments>http://dev.satake7.net/blog/2010/09/01/747/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 21:14:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[jQuery]]></category>

		<category><![CDATA[グリッドレイアウト]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/09/01/747/</guid>
		<description><![CDATA[
可変グリッドレイアウトjQueryプラグイン(jquery.vgrid.js)を某プロジェクトで使わせていただいています。
用途としては、固定幅のコンテンツなんで可変である必要はないんですが、リロードするたびにランダム [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="/files/2010/09/jquery-1.png" alt="jquery"  width="157" height="145"  /></div>
<p><a href="http://blog.xlune.com/2009/09/jqueryvgrid.html" target="_blank">可変グリッドレイアウトjQueryプラグイン(jquery.vgrid.js)</a>を某プロジェクトで使わせていただいています。<br />
用途としては、固定幅のコンテンツなんで可変である必要はないんですが、リロードするたびにランダムに並び順が変わるという効果として使っています。<br />
　<br />
こういう固定幅のコンテンツの場合、再描画で各画像のポジション計算が狂って上の方に重なって表示される場合があります。（easingのパラメータの調整で出にくくすることもできますが、完全に出ないわけではありません）<br />
たぶん、ウィンドウサイズが変わった場合の再描画では問題がないのでしょうから、ウィンドウサイズが変わらないような状況で使っている方が悪いのですが、たまにでも、画像が上の方に重なるといろいろ不都合が。（「表示上の問題なんです、F5キーを押してください」と言いたいところですが、見た目、いかにもなにか重大なバグが発生したように見えて、結構厳しいです）<br />
　<br />
初期化のあと、すぐ vgrefresh() してみたり、vgsort() してみたり、あと、一緒に動く JSがあるとそうなる頻度が上がるので、後ろの方にずらしてみたりしたんですが、なかなかこれといった対策もなく。<br />
外そうかなと思った瞬間、パッと思いつきました。<br />
[css]<br />
#grid-content {<br />
  display:none;<br />
  display:block\9;	/* IE7, IE8 */<br />
  overflow:hidden;<br />
  height:0;<br />
  margin-left:-1px;<br />
}<br />
[/css]<br />
「最初は消しときゃええやん」と。これでばっちりです。IEだけは消しとくとほんとに出てこなくなりましたので、出しときました。<br />
作者さま、ありがとうございました。</p>
<blockquote><p>
追記：これだとページ内ジャンプのとき、やっぱり表示できないケースがありました。なので、上のIE対応は止めて、基本表示しないで別のタイミング（他のJSが動くとき）、これ（↓）を入れることにしました。<br />
[code]<br />
$(&#8221;#grid-content&#8221;).css(&#8217;display&#8217;, &#8216;block&#8217;);<br />
[/code]<br />
なんか泥縄式になっているような気がするのは気のせい？<br />
再追記：これでもうまくいかないことがあったので、更に vgrefresh() を足しました。いよいよ泥縄（泥船）です。<br />
[code]<br />
$(&#8221;#grid-content&#8221;).css(&#8217;display&#8217;, &#8216;block&#8217;);<br />
$(&#8221;#grid-content&#8221;).vgrefresh();<br />
[/code]
</p></blockquote>
<p>ちなみにランダムの方は上流（コンテンツを準備する側）でやることにしました。<br />
[php]<br />
query_posts(&#8217;category_name=top&#038;posts_per_page=-1&#038;orderby=rand&#8217;);<br />
[/php]<br />
posts_per_page=-1 は無制限、orderby=rand が並び順ランダムです。</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/09/01/747/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Twitter ウィジェット</title>
		<link>http://dev.satake7.net/blog/2010/09/01/743/</link>
		<comments>http://dev.satake7.net/blog/2010/09/01/743/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 20:47:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Etc]]></category>

		<category><![CDATA[WP Tips]]></category>

		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/09/01/743/</guid>
		<description><![CDATA[
　
Twitter ウィジェットについてのちょっとした Tips。
そんなん当たり前やん、という方はヌルーで。

フォントサイズが指定できない
くそー、CSSで指定してんのに何で font-size変わらないんだよ！
 [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="/files/2010/09/twitter-icons10-140x150.jpg" alt="twitter"  width="140" height="150"  /></div>
<p>　<br />
<a href="http://twitter.com/widgets" target="_blank">Twitter ウィジェット</a>についてのちょっとした Tips。<br />
そんなん当たり前やん、という方はヌルーで。<br style="clear:both;" /></p>
<ul>
<li>フォントサイズが指定できない<br />
くそー、CSSで指定してんのに何で font-size変わらないんだよ！<br />
とお嘆きの貴兄。bodyタグの font-sizeや font-familyを強制的に使うみたいですよ。お試しあれ。（bodyじゃないかもしれませんが、とにかくベースの方の要素です）
</li>
<li>プロフィール画像とIDやタイトルが上下に分かれる<br />
これは純粋に CSSの問題です。H3タグや H4タグにはよく clear:both; が入っていると思いますので、これを無効にしてください。<br />
[code]<br />
.twtr-hd h3, .twtr-hd h4 {<br />
  clear:none;<br />
}<br />
[/code]
</li>
<li>WordPressのウィジェットとして貼りたい<br />
ハイハイ、<a href="http://wordpress.org/extend/plugins/php-code-widget/" target="_blank">PHP Code Widget</a>プラグインを入れてください。<br />
Twitter ウィジェットからコピペした JSコードは functions.php で関数にでもして。それを PHP Code Widgetから呼び出します。<br />
[php]<br />
function twitter_widget() {<br />
?><br />
<script src="http://widgets.twimg.com/j/2/widget.js"></script><br />
<script>
new TWTR.Widget({
  version: 2,  type: 'profile',  rpp: 4,  interval: 6000,  width: 'auto',  height: 300,
  theme: {
    shell: {    background: '#17375e', color: '#ffffff' },
    tweets: { background: '#305378', color: '#ffffff', links: '#418a21' }
  },
  features: {
    scrollbar: false, loop: false, live: false, hashtags: true, timestamp: true,
    avatars: false, behavior: 'all'
  }
}).render().setUser('hogehoge').start();
</script><br />
<?php<br />
}<br />
[/php]<br />
本題から外れますが、この functionの書き方、目から鱗と違います？<br />
こういうのを書くとき、いままでは echoで書いたり、ヒアドキュメントにしたりしてたんですが、?＞で PHPを閉じちゃって、HTMLをそのまま書いて最後に＜?phpで戻すなんて、なんという荒業なんでしょう！　と最初みたとき、びっくりしました。
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/09/01/743/feed/</wfw:commentRss>
		</item>
		<item>
		<title>moファイルを修正</title>
		<link>http://dev.satake7.net/blog/2010/09/01/739/</link>
		<comments>http://dev.satake7.net/blog/2010/09/01/739/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 20:08:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[WP Tips]]></category>

		<category><![CDATA[日本語化]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/09/01/739/</guid>
		<description><![CDATA[
WordPressに限ったことじゃないんだけど、他人さまの翻訳ファイル（.mo）を使わせていただいていて、「ちょっとここの訳はなぁ」と思うこともたまにはあると思います。
明らかな間違いだったら、作者に教えてあげるのが親 [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="/files/2010/09/wordpress-jon-rognerud-150x150.jpg" alt="wordpress"  width="150" height="150"  /></div>
<p>WordPressに限ったことじゃないんだけど、他人さまの翻訳ファイル（.mo）を使わせていただいていて、「ちょっとここの訳はなぁ」と思うこともたまにはあると思います。<br />
明らかな間違いだったら、作者に教えてあげるのが親切だと思いますが、自分が使いたい用途が少し特殊で、そのときだけ「こういう言い回しになっててほしいな」ということもあるんじゃないでしょうか？<br />
　<br />
そういうときに、.poファイルがついていれば、Poeditでオレオレ翻訳ファイル（.mo）を作ってチョチョイのチョイでいいんですが、往々にして作者の方はそこまで親切じゃないので、バイナリの .moファイルだけしか付いてこないという場合も結構あります。<br />
そういう場合は、コレ（↓）。<br />
[code]<br />
cd C:\Program Files\Poedit\bin\<br />
msgunfmt.exe C:\tmp\hoge.mo -o C:\tmp\hoge.po<br />
[/code]<br />
これで .poファイルが手に入ります。あとは Poeditで好きにするだけ。<br />
保存のときにこんなエラーが出ますが、.moファイル自体はちゃんと作られてます。<br />
[code]<br />
5:07:20: C:\tmp\hoge.po:269: message catalog has plural form translations...<br />
5:07:20: C:\tmp\hoge.po:2: ...but header entry lacks a &#8220;plural=EXPRESSION&#8221; attribute<br />
5:07:20: C:\tmp\hoge.po:269: message catalog has plural form translations...<br />
5:07:20: C:\tmp\hoge.po:2: ...but header entry lacks a &#8220;nplurals=INTEGER&#8221; attribute<br />
5:07:20: msgfmt: found 2 fatal errors<br />
[/code]</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/09/01/739/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WordPress3：ビギナー向けTips-1</title>
		<link>http://dev.satake7.net/blog/2010/08/28/735/</link>
		<comments>http://dev.satake7.net/blog/2010/08/28/735/#comments</comments>
		<pubDate>Sat, 28 Aug 2010 07:12:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[WP Tips]]></category>

		<category><![CDATA[WP3]]></category>

		<category><![CDATA[WordPress3]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/08/28/735/</guid>
		<description><![CDATA[
　
いままで、WordPress-mu 2.7 でサイトを構築していたので、WordPress 3.0.1 にしたら、テーマ関係がガラッと変わっていてびっくり。DB回りは大して変わってないのに。
というわけで、『ええー [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="http://farm4.static.flickr.com/3290/2986187518_24400c3e74_m.jpg" alt="" /></div>
<p>　<br />
いままで、WordPress-mu 2.7 でサイトを構築していたので、WordPress 3.0.1 にしたら、テーマ関係がガラッと変わっていてびっくり。DB回りは大して変わってないのに。<br />
というわけで、『ええー、こんなことも知らないの？』ということを中心にメモっていきます。<br style="clear:both;" /></p>
<ul>
<li><a href="http://wpdocs.sourceforge.jp/Child_Themes" target="_blank">子テーマ</a><br />
WP3には<a href="http://wpdocs.sourceforge.jp/Child_Themes" target="_blank">子テーマ</a>というやつができたらしい。いままで使いたいテーマをコピーして、それをシコシコ直していたんだけど、それはお行儀悪いから『親は誰それで、自分は誰それの子供です』と宣言して使うようになったらしい。なるほど、PHPerにも倫...（以下自主規制）<br />
詳しくは、<a href="http://wpdocs.sourceforge.jp/Child_Themes" target="_blank">子テーマ</a>を見てもらうことにして、簡単にいうと、/wp-content/themes の下に子テーマのディレクトリを作って、その中に style.css を入れればいいと。<br />
そんでもって、style.css の頭にこう書いておくと。<br />
[php]<br />
/*<br />
Theme Name:  kid<br />
Template:        twentyten<br />
*/<br />
@import url(&#8217;../twentyten/style.css&#8217;);<br />
[/php]<br />
これで、WP3デフォルトの twentytenの子供ですよということです。うんじゃ、テンプレート自体直したいときはどうすんのというのはまた別で。もちろんできます。
</li>
<li>子テーマの function.php<br />
これは、親テーマの前に読み込まれるようになっています。同じ名前があった場合、親テーマの関数が、こういうのをちゃんとやってくれてると二重定義になりません。<br />
[php]<br />
<?php<br />
if ( ! function_exists( '関数名' ) ) :<br />
endif;<br />
?><br />
[/php]<br />
<a href="http://wpdocs.sourceforge.jp/Child_Themes" target="_blank">子テーマ</a>に出ていたサンプルはまさにいつもいつも使うやつなので、助かりました。こうやってやればスマートなんだ。<br />
[php]<br />
<?php<br />
function favicon_link() {<br />
    echo '
<link rel="shortcut icon" type="image/x-icon" href=".get_bloginfo( 'stylesheet_directory' ).’/favicon.ico" />&#8216; . &#8220;\n&#8221;;<br />
}<br />
add_action(&#8217;wp_head&#8217;, &#8216;favicon_link&#8217;);<br />
?><br />
[/php]<br />
サンプルの favicon.ico はルートでしたが、通常は子テーマの中に置くので（マルチサイトなので）、ディレクトリを付けておきました。<br />
従来の ’template_url’ だと親テーマ（この場合、twentyten）のディレクトリをもってくるのでNGです。
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/08/28/735/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WordPress3：マルチドメイン対応</title>
		<link>http://dev.satake7.net/blog/2010/08/27/731/</link>
		<comments>http://dev.satake7.net/blog/2010/08/27/731/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 10:28:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[WP Tips]]></category>

		<category><![CDATA[WP3]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/08/27/731/</guid>
		<description><![CDATA[
重い腰を上げて、WordPress 3.0.1をインストールしました。インストール自体はいつにも増して簡単です。
ただ、2.9 by PostgreSQL はコアに手を入れすぎているので、アップデードはできそうになく、 [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="http://farm4.static.flickr.com/3290/2986187518_24400c3e74_m.jpg" alt="" /></div>
<p>重い腰を上げて、WordPress 3.0.1をインストールしました。インストール自体はいつにも増して簡単です。<br />
ただ、2.9 by PostgreSQL はコアに手を入れすぎているので、アップデードはできそうになく、エクスポートを試みましたが一瞬でエラーになったので、やらなくてよかったなぁと。<br />
2.7.1 by MySQL は、以前 2.9 にアップデートしようとして失敗した覚えがあるので、これも無理っぽいかなと。こちらはエクスポートできるので、地道に１つずつ移していけばいいかな。<br />
　<br />
ということで、普通に WordPress 3.0.1を新規インストールしたので、それをマルチドメイン対応にしていきたいと思います。</p>
<ol>
<li>WordPress3のダウンロード<br />
<a href="http://ja.wordpress.org/" target="_blank">WordPress 日本語ローカルサイト</a>からダウンロード。パーミッションとかをすごく気にしないといけないわけではないので、.zipで解凍したものをサーバに持っていってもいいと思います。もちろん、.tar.gz を wgetするのが正統派ですが。</p>
<hr style="border:1px dotted #C9D9E6; margin-bottom:20px;" /></li>
<li>データベースの作成<br />
MySQLに新しいDBをクリエイトしておきます。<br />
[code]<br />
$ mysql -u root -p<br />
mysql> create database wordpress3;<br />
mysql> grant all on wordpress3.* to &#8216;wpadmin&#8217;@'localhost&#8217; identified by &#8216;password&#8217;;<br />
[/code]</p>
<hr style="border:1px dotted #C9D9E6; margin-bottom:20px;" /></li>
<li>設定ファイル（wp-config.php）<br />
ダウンロードしたファイルを解凍すると、ルート・ディレクトリに wp-config-sample.php があります。これをエディットして、以下のところを修正して、wp-config.php として保存します。（他のところはデフォルトのままでOK）<br />
[php]<br />
define(&#8217;DB_NAME&#8217;, &#8216;wordpress3&#8242;);<br />
define(&#8217;DB_USER&#8217;, &#8216;wpadmin&#8217;);<br />
define(&#8217;DB_PASSWORD&#8217;, &#8216;password&#8217;);<br />
[/php]<br />
認証用ユニークキー（&#8217;AUTH_KEY&#8217; ～ &#8216;NONCE_SALT&#8217;）は、<a href="https://api.wordpress.org/secret-key/1.1/salt/" target="_blank">WordPress.org の秘密鍵サービス</a>を使って変えておきましょう。</p>
<hr style="border:1px dotted #C9D9E6; margin-bottom:20px;" /></li>
<li>Apacheの設定<br />
WordPressをインストールするためには、/wp-admin/install.php をブラウザで開かないといけないので、WordPressのファイルを置いたサーバのディレクトリを DocumentRoot にする Apacheのエントリ（ドメイン）を作らないといけません。<br />
[code]<br />
<VirtualHost *:80><br />
  ServerName hoge.jp<br />
  ServerAlias *.hoge.jp<br />
  DocumentRoot /home/www/wordpress3/<br />
</VirtualHost><br />
[/code]<br />
ここでは、hoge.jp でアクセスにいくと、/home/www/wordpress3/ を見に行くようにしました。Apacheの再起動は忘れずに。（restartでなくて reloadでいいと思うけど）</p>
<hr style="border:1px dotted #C9D9E6; margin-bottom:20px;" /></li>
<li>WordPress3のインストール<br />
http://hoge.jp/wp-admin/install.php でOKです。</p>
<hr style="border:1px dotted #C9D9E6; margin-bottom:20px;" /></li>
<li>マルチドメイン化<br />
WordPress3ではネットワークと呼んでる機能です。ざっと見たところ、WordPress-muと変わりありませんね。WordPress本体にマージされたということが重要なんでしょうね。<br />
さて、ネットワーク機能を使用するためには、wp-config.php に以下の記述を追加します。<br />
[php]<br />
define (&#8217;WP_ALLOW_MULTISITE&#8217;, true);<br />
[/php]<br />
そうすると、ダッシュボードの「ツール」に「ネットワーク」が追加されます。</p>
<hr style="border:1px dotted #C9D9E6; margin-bottom:20px;" /></li>
<li>ネットワークの設定<br />
・「サブドメイン」にするか「サブディレクトリ」にするか　・・・　うちはいつも「サブドメイン」です。（好き好きですが）<br />
・「ネットワークのタイトル」　・・・　あとで変えられます。<br />
・「管理者のメールアドレス」　・・・　あとで変えられます。<br />
これだけ設定して「インストール」を押すと、次のステップが表示されます。</p>
<ul>
<li>wp-content ディレクトリに blogs.dir ディレクトリを作成。Apacheの書き込み権限を追加。<br />
[code]<br />
# cd /home/www/wordpress3/wp-content<br />
# mkdir blogs.dir<br />
# chown www-data:www-data blogs.dir<br />
[/code]
</li>
<li>wp-config.php に以下のコードを追加。<br />
[php]<br />
define( &#8216;MULTISITE&#8217;, true );<br />
define( &#8216;SUBDOMAIN_INSTALL&#8217;, true );<br />
$base = &#8216;/&#8217;;<br />
define( &#8216;DOMAIN_CURRENT_SITE&#8217;, &#8216;hoge.jp&#8217; );<br />
define( &#8216;PATH_CURRENT_SITE&#8217;, &#8216;/&#8217; );<br />
define( &#8216;SITE_ID_CURRENT_SITE&#8217;, 1 );<br />
define( &#8216;BLOG_ID_CURRENT_SITE&#8217;, 1 );<br />
[/php]
</li>
<li>/home/www/wordpress3/ ディレクトリに .htaccess を作成する。<br />
[code]<br />
RewriteEngine On<br />
RewriteBase /<br />
RewriteRule ^index.php$ - [L]</p>
<p># uploaded files<br />
RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]</p>
<p>RewriteCond %{REQUEST_FILENAME} -f [OR]<br />
RewriteCond %{REQUEST_FILENAME} -d<br />
RewriteRule ^ - [L]<br />
RewriteRule . index.php [L]<br />
[/code]
</li>
</ul>
<p>これでネットワーク関係はOKです。</p>
<hr style="border:1px dotted #C9D9E6; margin-bottom:20px;" /></li>
<li>WordPress MU Domain Mapping のインストール<br />
ネットワークを入れただけだと、http://hoge.jp や http://ore.hoge.jp 、http://dare.hoge.jp など、複数のブログを管理することができるようになりますが、マルチドメインになったわけではありません。<br />
そこで、WordPress-muの文字通りのドン、donnchaさん作のプラグインを導入します。プラグインは新規追加で「WordPress MU Domain Mapping」を検索すれば出てきますから、いつもの手順通りにどうぞ。<br />
インストールしただけだと有効化しないので、以下２点を忘れずに。<br />
１．プラグインディレクトリの wordpress-mu-domain-mapping/sunrise.php を wp-content ディレクトリにコピー<br />
２．define( &#8216;SUNRISE&#8217;, &#8216;on&#8217; ); を wp-config.php に追加</p>
<hr style="border:1px dotted #C9D9E6; margin-bottom:20px;" /></li>
<li>サイトの追加<br />
時間切れなので、あとは注意点のみ。<br />
・サイトを追加するときは、「サイトのアドレス」として、サブドメインを指定するが、独自ドメインにMappingしたあとは、使わなくなってしまうので、あまり名前付けに神経質にならなくてもよい。<br />
・WordPress MU Domain Mapping の Domains で実際に割り当てる独自ドメインを指定する。<br />
・Apacheの設定はもちろん必要。</p>
<hr style="border:1px dotted #C9D9E6; margin-bottom:20px;" /></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/08/27/731/feed/</wfw:commentRss>
		</item>
		<item>
		<title>phpMyAdminのインストール</title>
		<link>http://dev.satake7.net/blog/2010/08/27/728/</link>
		<comments>http://dev.satake7.net/blog/2010/08/27/728/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 10:18:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Etc]]></category>

		<category><![CDATA[サーバ管理]]></category>

		<guid isPermaLink="false">http://dev.satake7.net/blog/2010/08/27/728/</guid>
		<description><![CDATA[
今更ながら、phpMyAdmin をインストールしてみました。
いままで敬遠していたのは、PHPダサいなぁと思っていたことと、phpMyAdminを入り口にしてセキュリティが甘くなったら嫌だなぁということだったんですが [...]]]></description>
			<content:encoded><![CDATA[<div class="img-shadow"><img src="/files/2010/08/phpmyadmin.png" alt="phpmyadmin"  width="186" height="113"  /></div>
<p>今更ながら、phpMyAdmin をインストールしてみました。<br />
いままで敬遠していたのは、PHPダサいなぁと思っていたことと、phpMyAdminを入り口にしてセキュリティが甘くなったら嫌だなぁということだったんですが、WordPressにこれだけお世話になっておいて、PHPダサいはないだろうと。あと、セキュリティについては、ルーターの外から入れないようにしとけばいいんじゃね、ということで手順と若干の注意点です。</p>
<ol>
<li>phpMyAdmin本体のダウンロードは、<a href="http://www.phpmyadmin.net/home_page/downloads.php" target="_blank">ここから</a>。<br />
現時点の最新安定版は、phpMyAdmin-3.3.5.1-all-languages.tar.gz でした。</li>
<li>落っことしたら、/home/www/ 配下にインストールすることにします。（もちろん、どこでもいいのですが）<br />
[code]<br />
$ cd /home/www<br />
$ tar -xzvf phpMyAdmin-3.3.5.1-all-languages.tar.gz<br />
$ mv phpMyAdmin-3.3.5.1-all-languages phpMyAdmin<br />
$ s chown -R www-data:www-data phpMyAdmin<br />
[/code]<br />
tarで解凍するとバージョンも含んだ長い名前のディレクトリができちゃったので、リネームしました。<br />
あと、Apacheのユーザが実際の読み書きをするので、ディレクトリごとオナ―を変えちゃいました。
</li>
<li>phpMyAdminディレクトリの中に、config.sample.inc.php があるので、これを編集して、config.inc.php という名前で保存しておきます。変更点はこちら（↓）<br />
[code]<br />
$cfg['blowfish_secret'] = &#8216;xsafsdfsggdfgdvffdegrge&#8217;;  // クッキー認証用の暗証文字列なので、適当な長さのものをセット。特殊記号とか大文字は混ぜない方がいいのかな。（未確認）<br />
$cfg['Lang'] = &#8216;ja-utf-8&#8242;;    // 日本語指定<br />
$cfg['PmaNoRelation_DisableWarning'] = true;    // リンクテーブルがありませんエラーを出さなくする指定<br />
[/code]<br />
あとは標準のままでいけます。
</li>
<li>基本的にこれでOKなんですが、ブラウザからアクセスするために、Apacheの設定をやっておきます。<br />
[code]<br />
<VirtualHost *:80><br />
  ServerName phpmyadmin.192.com<br />
  DocumentRoot /home/www/phpMyAdmin<br />
  <Directory "/home/www/phpMyAdmin"><br />
    Order deny,allow<br />
    Deny from all<br />
    Allow from 127.0.0.1<br />
    Allow from 192.168.1<br />
  </Directory><br />
</VirtualHost><br />
[/code]<br />
192.comは自分ででっち上げたドメインです。（本物の192.comはどこか別のところを指すはず）<br />
お気軽にこのドメインを hostsファイルに登録して自サーバに振り向けておきます。（そうはいっても万が一、外から入ってこられたときのために内部LANだけ allowしておくと）
</li>
<li>あとやったことは、mcryptというライブラリが PHPに入っていなかったので、これを入れて Apacheを再起動しました。<br />
[code]<br />
# apt-get install php5-mcrypt<br />
# /etc/init.d/apache2 restart<br />
[/code]
</li>
<li>『リンクテーブルを処理するための追加機能が無効になっています』エラーについて<br />
$cfg['PmaNoRelation_DisableWarning'] = true; の設定でエラーはでなくなりますが、拡張機能らしいのでちょっと使いたくなって、いろいろとやってみたのですが、最初の項目（pmadb）はOKになるんですが、それ以降はすべて NGで一向に進展がないため、あきらめました。忘れたことにやってみるかも。⇒ 参考サイト：<a href="http://ja.528p.com/linux/centos/SJ004-phpMyAdmin.html" target="_blank">phpMyAdminのインストール</a></li>
</ol>
<p>こちら（↓）はインストールとは関係ありませんが、参考まで。<br />
<a href="http://www.koikikukan.com/archives/2006/06/12-005023.php" target="_blank">MySQL + phpMyAdmin によるバックアップ</a></p>
]]></content:encoded>
			<wfw:commentRss>http://dev.satake7.net/blog/2010/08/27/728/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
