<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>クレコ &#187; WordPress</title>
	<atom:link href="http://creco.net/tag/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://creco.net</link>
	<description>East or west, home is best.</description>
	<lastBuildDate>Fri, 27 Nov 2009 13:26:56 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://creco.net/tag/wordpress/feed/" />
		<item>
		<title>投稿スラッグをGoogle AJAX Language APIで英訳するWordPressのプラグインを作った</title>
		<link>http://creco.net/2009/06/14/made_a_wordpress_plugin_that_translate_post-slug_with_google_ajax_language_api/</link>
		<comments>http://creco.net/2009/06/14/made_a_wordpress_plugin_that_translate_post-slug_with_google_ajax_language_api/#comments</comments>
		<pubDate>Sat, 13 Jun 2009 17:54:58 +0000</pubDate>
		<dc:creator>inagaki</dc:creator>
				<category><![CDATA[作ってみた]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://creco.net/?p=553</guid>
		<description><![CDATA[ 
それは、どういうものですか？
WordPressのURLとして使われる投稿スラッグ。これは、標準だと投稿タイトルをURLエンコードしたものが自動的に使われて、やけに長くなるしかっこ悪い。
んで、ぼくは投稿タイトルを逐 [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="投稿スラッグをGoogle AJAX Language APIで英訳するWordPressのプラグインを作った" border="0" alt="投稿スラッグをGoogle AJAX Language APIで英訳するWordPressのプラグインを作った" src="http://creco.net/wp-content/uploads/Ci090614030747.jpg" width="440" height="257" /> </p>
<h4>それは、どういうものですか？</h4>
<p>WordPressのURLとして使われる<strong>投稿スラッグ</strong>。これは、標準だと投稿タイトルをURLエンコードしたものが自動的に使われて、やけに長くなるしかっこ悪い。</p>
<p>んで、ぼくは投稿タイトルを逐一英訳して投稿スラッグとして入力しているんだけど、ボキャ貧なので通じるかどうかわからない怪しげな英語になってしまう ＞＜</p>
<p>そこで、自動的に投稿タイトルを英訳してくれて、それが投稿スラッグになってくれると素敵だなと思い、WordPressのプラグインを作ってみました。</p>
<p> <span id="more-553"></span><br />
<h4>インストール方法と使い方</h4>
<pre class="csharpcode">&lt;?php
<span class="rem">/*</span>
<span class="rem">Plugin Name: Slug translate J to E </span>
<span class="rem">Plugin URI: http://creco.net/</span>
<span class="rem">Description: 投稿タイトルの日本語をそのまま投稿スラッグにするのではなく、Google AJAX Language APIで英訳したものを投稿スラッグにします</span>
<span class="rem">Author: Shintaro Inagaki</span>
<span class="rem">Version: 1.0</span>
<span class="rem">Author URI: http://creco.net/</span>
<span class="rem">*/</span>

function slug_translate_j_to_e($title) {

    $translateApiUrl = <span class="str">'http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&amp;q='</span>.urlencode($title).<span class="str">'&amp;langpair=ja%7Cen'</span>;
    $response = file_get_contents($translateApiUrl);  

    $parsedJson = json_decode($response);

    <span class="kwrd">if</span>(isset($parsedJson-&gt;responseData-&gt;translatedText)) {
        $title = $parsedJson-&gt;responseData-&gt;translatedText;
    }
    $title = strtolower($title);
    $title = str_replace(<span class="str">' '</span>, <span class="str">'_'</span>, $title);
    $title = preg_replace(<span class="str">'/[^%a-z0-9_-]/'</span>, <span class="str">''</span>, $title);

    <span class="kwrd">return</span> $title;
}

add_filter(<span class="str">'sanitize_title'</span>, <span class="str">'slug_translate_j_to_e'</span>, 9);

?&gt;</pre>
<p>上のコードを適当なファイルに保存（ slug-translate-j-to-e.php とか適当な名前つけてね）して、WordPressのプラグインフォルダ（ /wp-content/plugins/ 以下）にアップロードすれば、プラグイン管理画面から「使用する」が選べるようになります。</p>
<p>後は、普通に投稿すれば自動的に投稿タイトルを翻訳したものが投稿スラッグとして使われてると思います。</p>
<p>翻訳を確認したいという場合は、「下書きとして保存」とし、その後に投稿スラッグを編集すれば、半手動で利用できるかと。</p>
<h4>やっていること<br />
<style type="text/css">
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }</style>
</h4>
<p><a href="http://code.google.com/intl/ja/apis/ajaxlanguage/documentation/reference.html">Translation API のクラス リファレンス &#8211; Google AJAX Language API &#8211; Google Code</a> をRESTで使用しています。</p>
<p>タイトルをAPIに投げて、JSONで帰ってきたものを処理。</p>
<p>処理は、上から順番に、大文字を小文字にする → スペースをアンダースコアに変換する → 小文字英数字とハイフン、アンダースコア以外の文字を削除する といった内容。</p>
<h4>注意点</h4>
<p>Google の翻訳は期待しないほうがいい。</p>
]]></content:encoded>
			<wfw:commentRss>http://creco.net/2009/06/14/made_a_wordpress_plugin_that_translate_post-slug_with_google_ajax_language_api/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://creco.net/2009/06/14/made_a_wordpress_plugin_that_translate_post-slug_with_google_ajax_language_api/" />
	</item>
		<item>
		<title>WordPressのテーマをBlueprint CSSで作る</title>
		<link>http://creco.net/2009/02/18/make_wordpress_theme_using_blueprint_css/</link>
		<comments>http://creco.net/2009/02/18/make_wordpress_theme_using_blueprint_css/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 06:30:47 +0000</pubDate>
		<dc:creator>inagaki</dc:creator>
				<category><![CDATA[作ってみた]]></category>
		<category><![CDATA[Blueprint]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://creco.net/?p=27</guid>
		<description><![CDATA[WordPressのテーマをいじるのなんて３年ぶりぐらいなので、当時購入したリファレンス本と今のデフォルトテーマにあるテーマ実装を見比べながらテーマ作りをしてました。
昔は条件分け、繰り返しの記述ばかりで、テンプレートが [...]]]></description>
			<content:encoded><![CDATA[<p>WordPressのテーマをいじるのなんて３年ぶりぐらいなので、当時購入したリファレンス本と今のデフォルトテーマにあるテーマ実装を見比べながらテーマ作りをしてました。</p>
<p>昔は条件分け、繰り返しの記述ばかりで、テンプレートがカオスになりがちだったけど、テンプレート関数が充実してきてかなり楽になってる印象。</p>
<p>例えば、スレッド形式にできたり複雑化していたコメントも、</p>
<p><code>&lt;?php wp_list_comments();?&gt;</code></p>
<p>だけで表示され、後はスタイルシートで味付けするだけでお手軽ですね。</p>
<p><span id="more-27"></span>本題のテーマ作り、</p>
<p><a href="http://www.blueprintcss.org/">Blueprint CSS</a>はCSSのフレームワーク（ブラウザ間の表示差違をなくすリセットや、グリッドデザインが簡単にできたり便利！）なんですが、それをWordPressのテーマにあわせると幸せになれそうなのでやってみた。下にポイントをいくつか。</p>
<h5>デフォルトテーマを使う</h5>
<p>公開されてる自由に使えるテーマって沢山あるんだけど、国際化されてなくて日本語に対応させるだけで面倒。なので、デフォルトテーマを新しいテーマフォルダにコピーして使うのが楽。</p>
<h5>不要なファイルを削除</h5>
<p>私の場合は、</p>
<ul>
<li>index.phpを基準にsingle.php、archive.php、search.php、comments.php、footer.php、header.php、sidebar.php、page.phpの各テンプレート</li>
<li>国際化ファイルをフックするfunctions.php</li>
<li>日本語用ja.mo、ja.po、kubrick.pot</li>
<li>スタイルシートとしてstyle.css</li>
</ul>
<p>これくらいしか使わない。</p>
<p>必要になったときにあとから足せばいいやって考え。</p>
<h5>Blueprint CSSの設置</h5>
<p>テーマフォルダ以下にcss/blueprint/ としてファイルを置いた。</p>
<p>呼び出しは、header.php に</p>
<p><code>&lt;link rel="stylesheet" href="&lt;?php bloginfo('template_directory'); ?&gt;/css/blueprint/screen.css" type="text/css" media="screen, projection" /&gt;<br />
&lt;link rel="stylesheet" href="&lt;?php bloginfo('template_directory'); ?&gt;/css/blueprint/print.css" type="text/css" media="print" /&gt;<br />
&lt;!--[if IE]&gt;&lt;link rel="stylesheet" href="&lt;?php bloginfo('template_directory'); ?&gt;/css/blueprint/ie.css" type="text/css" media="screen, projection" /&gt;&lt;![endif]--&gt;</code></p>
<p>ってデフォルトのスタイルシートを呼び出してるところの前に挿入すればok。</p>
<h5>デザインレイアウトの変更</h5>
<p>header.php （footer.phpで閉じてね）に</p>
<p><code>&lt;div class="container"&gt;</code></p>
<p>って記述すれば、Blueprint CSSのグリッド構造スタートの合図。containerクラスの幅が標準で950pxなので、それが気に入らない場合は、style.css のほうで上書き定義してやる（Blueprint CSS本体を修正しない！）。</p>
<p>メインコンテンツとサイドバーを分けるためのグリッド構造はお好みで、<br />
index.php（single.php、archive.php、search.phpも同様） では、</p>
<p><code>&lt;div class="span-14 colborder"&gt;<br />
（中身）<br />
&lt;/div&gt;</code></p>
<p>sidebar.phpでは、</p>
<p><code>&lt;div class="span-5 last"&gt;<br />
（中身）<br />
&lt;/div&gt;</code></p>
<p>これでおしまい。簡単でしょ。</p>
<h5>CSSの調整</h5>
<p>あとは、style.css で必要ないものを削除して（幅の絶対指定など）、見た目の調整に移ればいい。</p>
<p>Blueprint CSS化しちゃえば、今後新しい異端なブラウザが登場してもCSSハックとか覚える必要なく、Blueprint CSSをバージョンアップさえすればいいし、<br />
何より、どこでも同じCSSが通用するのが非常にキモチいい。おすすめです。</p>
]]></content:encoded>
			<wfw:commentRss>http://creco.net/2009/02/18/make_wordpress_theme_using_blueprint_css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://creco.net/2009/02/18/make_wordpress_theme_using_blueprint_css/" />
	</item>
	</channel>
</rss>
