<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feed.u-1.net/~d/styles/itemcontent.css"?><rss 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" version="2.0">

<channel>
	<title>MOMENTS » WordPress</title>
	
	<link>http://www.u-1.net</link>
	<description>ラノベ読みの読書感想とえろげファンの創作小説のサイト。あと、ゲームとかコンピュータとか。</description>
	<lastBuildDate>Tue, 31 Jan 2012 15:27:41 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<meta name="generator" content="Obscure 2.0" />
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/category/wordpress/feed/" />
	
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feed.u-1.net/u-1/Wordpress" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="u-1/wordpress" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://www.u-1.net/?pushpress=hub" /><item>
		<title>FeedBurner 提供の RSS が Quick Cache の影響で更新遅れていた罠</title>
		<link>http://www.u-1.net/2012/01/08/2514/</link>
		<comments>http://www.u-1.net/2012/01/08/2514/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 07:31:28 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Quick Cache]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=2514</guid>
		<description><![CDATA[WordPress の Quick Cache プラグインはお手軽にコンテンツのキャッシュによる高速化の恩恵が受けられる便利な物なのですが、使い方によっては気付かずにトラブってしまったというお間抜けなお話。 以前は360... [<a href="http://www.u-1.net/2012/01/08/2514/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><img alt="" src="http://s.wordpress.org/extend/plugins/quick-cache/screenshot-1.png?r=486450" title="Quick Cache" class="aligncenter" width="530" height="261" /></p>
<p>WordPress の <a href="http://wordpress.org/extend/plugins/quick-cache/screenshots/">Quick Cache</a> プラグインはお手軽にコンテンツのキャッシュによる高速化の恩恵が受けられる便利な物なのですが、使い方によっては気付かずにトラブってしまったというお間抜けなお話。</p>
<p>以前は3600秒でキャッシュの更新を行うようにしていたので、気付かなかったわけですが、ここ最近の更新頻度の低下からキャッシュの更新間隔を1週間までに伸ばしてしまったせいで発覚した設定ミスです。</p>
<p>通常の設定なら更新時にフロントページと更新したポストのシングルページは問題なく更新されますが、RSS までキャッシュされているとは思いもよらず。さらにサイトのフィードは FeedBurner での提供に集約していたために、FeedBruner 側が更新通知を pubsubhubbub などでほぼリアルタイムで受け取っても肝心のオリジナルの RSS がキャッシュされているものを読み取って更新なしと判断していたみたいです。おかげで更新後数日以上してからようやく FeedBurner 側に反映するというなんともスローな状態になっていました。</p>
<p>で、設定見直したのは Quick Cache の以下の項目。</p>
<h3>No-Cache URI Patterns</h3>
<p>ドメイン名を除いたアドレスのパターンを記述して、該当したらキャッシュしないようにする設定。ここに <code>/feed/</code>を追加しました。</p>
<p><a href="http://www.u-1.net/wp-content/uploads/2012/01/QuickCache_SetUp_0.jpg" title="QuickCache No-Cache URI Patterns"><img src="http://www.u-1.net/wp-content/uploads/2012/01/QuickCache_SetUp_0.jpg" alt="" title="QuickCache No-Cache URI Patterns" width="400" height="206" class="aligncenter size-full wp-image-2517" /></a></p>
<h3>No-Cache User-Agent Patterns</h3>
<p>アクセスしてきたブラウザのユーザーエージェントに応じてキャッシュを返すかどうかを設定する部分です。ここにサーチエンジンのクローラなどもまとめて、<code>bot</code>、<code>slurp</code>、<code>FeedBurner</code>などを追加。</p>
<p><a href="http://www.u-1.net/wp-content/uploads/2012/01/QuickCache_SetUp_1.jpg" title="QuickCache No-Cache User-Agent Patterns"><img src="http://www.u-1.net/wp-content/uploads/2012/01/QuickCache_SetUp_1.jpg" alt="" title="QuickCache No-Cache User-Agent Patterns" width="400" height="262" class="aligncenter size-full wp-image-2516" /></a></p>
<p>これで基本的には機械のアクセスなどにはキャッシュしない結果を返すようになったはずですが、うまく動作してるかなあ?</p>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2012/01/07/2510/' rel='bookmark' title='Post Templates 4.0 日本語リソース'>Post Templates 4.0 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/11/05/1559/' rel='bookmark' title='Twitpress を twicco に力業で対応させてみる'>Twitpress を twicco に力業で対応させてみる</a></li>
<li><a href='http://www.u-1.net/2008/01/11/1061/' rel='bookmark' title='Search Regex 日本語リソース'>Search Regex 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2006/12/12/521/' rel='bookmark' title='wp-tegakiプラグインを導入してみる'>wp-tegakiプラグインを導入してみる</a></li>
<li><a href='http://www.u-1.net/2006/11/06/431/' rel='bookmark' title='WP-PageNavi のおかしな挙動'>WP-PageNavi のおかしな挙動</a></li>
<li><a href='http://www.u-1.net/2006/10/12/131/' rel='bookmark' title='Mobile Eye+ で携帯電話閲覧に対応する'>Mobile Eye+ で携帯電話閲覧に対応する</a></li>
<li><a href='http://www.u-1.net/2006/10/02/48/' rel='bookmark' title='RSSフィードをサイドバーに挿入するプラグイン'>RSSフィードをサイドバーに挿入するプラグイン</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2012/01/08/2514/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2012/01/08/2514/" />
	</item>
		<item>
		<title>Post Templates 4.0 日本語リソース</title>
		<link>http://www.u-1.net/2012/01/07/2510/</link>
		<comments>http://www.u-1.net/2012/01/07/2510/#comments</comments>
		<pubDate>Sat, 07 Jan 2012 11:05:38 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[L10N]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Post templates]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=2510</guid>
		<description><![CDATA[テンプレートを作成し、それを元にエントリやページを作成できる WordPress のプラグイン Post templates 4.x 用の日本語リソースです。 バージョン 3.0 までは無償で利用できたプラグインですが、... [<a href="http://www.u-1.net/2012/01/07/2510/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.u-1.net/wp-content/uploads/2012/01/PostTemplatesList.jpg" title="Post Templates テンプレートリスト画面"><img src="http://www.u-1.net/wp-content/uploads/2012/01/PostTemplatesList.jpg" alt="" title="Post Templates テンプレートリスト画面" width="400" height="121" class="aligncenter size-full wp-image-2512" /></a></p>
<p>テンプレートを作成し、それを元にエントリやページを作成できる WordPress のプラグイン <a href="http://www.vincentprat.info/dev/wordpress-plugins/post-templates">Post templates</a> 4.x 用の日本語リソースです。</p>
<p>バージョン 3.0 までは無償で利用できたプラグインですが、4.0 以降は有償の商用プラグインになってしまったので需要はあまりないかもしれませんが、同じフォーマットのエントリを使い回すときなどはテンプレート化は非常に便利な機能なのでおすすめのプラグインではあります。</p>
<p>まぁ、今なら本体に組み込まれたカスタム投稿タイプなどを活用すれば同様の機能は無料で使えそうですが。</p>
<h3>日本語化の方法</h3>
<p>使い方は、ファイルをダウンロードし、展開して出てきたファイルをプラグインと同じディレクトリにコピーしてください。</p>
<h3>ダウンロード</h3>
<ul class="download-this">
<li><a class="downloadlink" href="http://www.u-1.net/downloads/post-template-4.0.0-ja.zip" title="バージョン4.0.0 ダウンロード 24 回" >Post Templates 4.0.0. 日本語リソース (24)</a><br /><span class="update">Update:2012/01/07</span></li>
</ul>
<h3>旧バージョンはこちら</h3>
<p>バージョン 3.0 までの日本語リソースをお探しの場合は<a href="http://www.u-1.net/2008/01/10/1058/" title="Post templates 日本語リソース(旧版)">こちら</a>からどうぞ。</p>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2011/12/29/2498/' rel='bookmark' title='AddQuicktag 日本語リソース(2.0.0以降対応版)'>AddQuicktag 日本語リソース(2.0.0以降対応版)</a></li>
<li><a href='http://www.u-1.net/2009/06/19/1812/' rel='bookmark' title='WP-Table Reloaded 日本語リソース'>WP-Table Reloaded 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/18/1071/' rel='bookmark' title='Customizable Post Listings を WordPress 2.3 系統で使用する'>Customizable Post Listings を WordPress 2.3 系統で使用する</a></li>
<li><a href='http://www.u-1.net/2008/01/17/1070/' rel='bookmark' title='WP-PostRatings 日本語リソース'>WP-PostRatings 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/11/1061/' rel='bookmark' title='Search Regex 日本語リソース'>Search Regex 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/10/1058/' rel='bookmark' title='Post templates 日本語リソース(旧版)'>Post templates 日本語リソース(旧版)</a></li>
<li><a href='http://www.u-1.net/2007/06/18/846/' rel='bookmark' title='Comment Post Rewriter を導入してみる'>Comment Post Rewriter を導入してみる</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2012/01/07/2510/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2012/01/07/2510/" />
	</item>
		<item>
		<title>AddQuicktag 日本語リソース(2.0.0以降対応版)</title>
		<link>http://www.u-1.net/2011/12/29/2498/</link>
		<comments>http://www.u-1.net/2011/12/29/2498/#comments</comments>
		<pubDate>Thu, 29 Dec 2011 02:27:16 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[AddQuickTag]]></category>
		<category><![CDATA[L10N]]></category>
		<category><![CDATA[Plugin]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=2498</guid>
		<description><![CDATA[WordPress のプラグイン AddQuickTag の日本語リソースです。 バージョンが2.0へと上がり、旧版では日本語化されないメニューがいくつかありましたので、それらへの対応です。 ありがたいことに、WordP... [<a href="http://www.u-1.net/2011/12/29/2498/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.u-1.net/wp-content/uploads/2011/12/AddQuickTagSS.jpg" title="AddQuickTagスクリーンショット"><img src="http://www.u-1.net/wp-content/uploads/2011/12/AddQuickTagSS.jpg" alt="" title="AddQuickTagスクリーンショット" width="500" height="424" class="aligncenter size-full wp-image-2500" /></a></p>
<p>WordPress のプラグイン <a href="http://wordpress.org/extend/plugins/addquicktag/" title="AddQuickTag WordPress Plugin Repository">AddQuickTag</a> の日本語リソースです。</p>
<p>バージョンが2.0へと上がり、<a href="http://www.u-1.net/2008/01/09/1057/" title="WP-AddQuicktag 日本語リソース同梱版">旧版</a>では日本語化されないメニューがいくつかありましたので、それらへの対応です。</p>
<p>ありがたいことに、WordPress のプラグイン関係の記事でちょくちょく紹介されているようですので、ひさびさに更新してみました。</p>
<h3>使用方法</h3>
<p>ファイルをダウンロードし、展開してできた <code>addquicktag-ja.mo</code> を AddQuictag インストールディレクトリに含まれる languages 以下に上書きしてください。</p>
<h3>ダウンロード</h3>
<ul class="download-this">
<li><a class="downloadlink" href="http://www.u-1.net/downloads/addquicktag-2.0.0-ja.zip" title="バージョン2.0.0 ダウンロード 113 回" >AddQuickTag-2.0.0-ja (113)</a><br /><span class="update">Update:2011/12/29</span></li>
</ul>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2012/01/07/2510/' rel='bookmark' title='Post Templates 4.0 日本語リソース'>Post Templates 4.0 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2009/06/19/1812/' rel='bookmark' title='WP-Table Reloaded 日本語リソース'>WP-Table Reloaded 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/17/1070/' rel='bookmark' title='WP-PostRatings 日本語リソース'>WP-PostRatings 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/11/1061/' rel='bookmark' title='Search Regex 日本語リソース'>Search Regex 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/10/1058/' rel='bookmark' title='Post templates 日本語リソース(旧版)'>Post templates 日本語リソース(旧版)</a></li>
<li><a href='http://www.u-1.net/2008/01/09/1057/' rel='bookmark' title='WP-AddQuicktag 日本語リソース同梱版(旧版)'>WP-AddQuicktag 日本語リソース同梱版(旧版)</a></li>
<li><a href='http://www.u-1.net/2008/01/09/1056/' rel='bookmark' title='wp-Table の日本語リソース'>wp-Table の日本語リソース</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2011/12/29/2498/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2011/12/29/2498/" />
	</item>
		<item>
		<title>WordPress 3.2 がリリースされたので更新してみた</title>
		<link>http://www.u-1.net/2011/07/12/2476/</link>
		<comments>http://www.u-1.net/2011/07/12/2476/#comments</comments>
		<pubDate>Tue, 12 Jul 2011 06:20:12 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=2476</guid>
		<description><![CDATA[WordPress 3.2 日本語版が無事にリリースされたので、このサイトのバージョンも速攻上げてみました。 今回から、システムの要件が変更になって、古い PHP やら MySQL やらでは動かなくなるために、サーバ環境... [<a href="http://www.u-1.net/2011/07/12/2476/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><a title="WordPress スクリーンショット" href="http://www.u-1.net/wp-content/uploads/2011/07/ss3.png"><img src="http://www.u-1.net/wp-content/uploads/2011/07/ss3.png" alt="" title="WordPress スクリーンショット" width="466" height="303" class="aligncenter size-full wp-image-2479" /></a></p>
<p><a href="http://ja.wordpress.org/2011/07/10/wordpress-3-2-ja/">WordPress 3.2 日本語版が無事にリリース</a>されたので、このサイトのバージョンも速攻上げてみました。</p>
<p>今回から、システムの要件が変更になって、古い PHP やら MySQL やらでは動かなくなるために、サーバ環境によっては苦労する人も出そうな感じですが、幸いにしてそこら辺の条件はクリア済み。いつも通りの手順でアップデートできました。</p>
<p>まぁ、個人的には、自動バージョンアップは怖いので、つねに手動で更新してはいるのですが、その辺は、バックアップさえちゃんと残っていればいくらでもやりようはあるのかなあ?</p>
<h3>必要環境</h3>
<ul>
<li>PHP バージョン 5.2 以降（今までの要件はバージョン 4.3 以降）</li>
<li>MySQL バージョン 5.0.15 以降（今までの要件はバージョン 4.1.2 以降）</li>
</ul>
<p>さすがに、PHP4 のサポートをいつまでもやってる場合じゃないという話でしょうけど、使用しているプラグインによっては、動作しない可能性もあるため、事前検証じゅーよー。とか言いつつ、えいや! で更新して動いたからオッケー的な作業でしたががが(；´∀｀)</p>
<h3>おもな変更点</h3>
<ul>
<li>管理画面 UI リフレッシュ</li>
<li>新デフォルトテーマ「TwentyEleven」 &#8211; 最新のテーマ機能を活用。</li>
<li>フルスクリーン編集画面 &#8211; 集中執筆モード</li>
<li>管理バーの拡張 &#8211; 便利なリンクを追加</li>
<li>ブラウザー互換性の向上:</li>
<ul>
<li>Internet Explorer 6 対応を終了</li>
<li>Internet Explorer 7 に対するエンド・オブ・ライフ（EOL）サイクルをスタート</li>
<li>Browse Happy で旧式のブラウザを利用中のユーザーへ告知。</li>
</ul>
<li>WordPress はスピードアップし、よりライトに</li>
<ul>
<li>ページ読み込みのスピードアップ &#8212; よくアクセスされる WordPress 内のページのリードタイムを改善。</li>
<li>アップグレードのスピードアップ &#8212; システムがインクリメンタルアップグレードに対応認め、3.2 以降はアップグレードが今までよりもスピードアップ</li>
<li>コアでX行分のコードを削減</li>
<li>WP_Filesystem の最適化 &#8211; FTP を使ったアップロードがよりスピードアップし、エラーが起こりにくくなった</li>
<li>ファイルシステムへのダウンロードをストリームか &#8212; 更新時のスピードアップ、メモリーフットプリントの低減</li>
<li>wptexturize() のパフォーマンス向上</li>
<li>タイムゾーンなど、PHP4 サポートを廃止</li>
<li>term インターセクションクエリの効率向上</li>
<li>HTML サニタイザー (kses) を一部最適化</li>
<li>is_serialized_string() の速度最適化</li>
<li>ダッシュボードの RSS ウィジェットからの HTML 出力をキャッシュして、不要な AJAX リクエストなどのメモリーフットプリントを軽減</li>
<li>ほか多数の改善、調整</li>
</ul>
</ul>
<p>パフォーマンス方面の改善が進んで、特にダッシュボードでの動作はキビキビするようになったでしょうか? 新規投稿の追加画面の表示が一瞬でされたあたりに高速化の恩恵を感じました。</p>
<p>フロントエンド部分では、すでにキャッシュ系のプラグインを使ったりしてるんで、動作速度の変化は感じられないですが、トータルでの負荷が下がっているなら、比較的低いスペックのサーバでもマシな速度で動くようになるんでしょうかね?</p>
<p>とりあえず、使っていたプラグインはほぼ問題なく動作して、テーマも非互換が心配でしたがひとまずは大丈夫そう。最近とみに更新頻度が低下してなんともはやな状態ですが、WordPress いじりは続けていくんじゃないですかねー。</p>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2008/04/18/1164/' rel='bookmark' title='WordPress 2.5 で自動で挿入されるバージョン情報を削除する'>WordPress 2.5 で自動で挿入されるバージョン情報を削除する</a></li>
<li><a href='http://www.u-1.net/2008/02/13/1097/' rel='bookmark' title='WordPress と はてなアンテナの微妙な関係'>WordPress と はてなアンテナの微妙な関係</a></li>
<li><a href='http://www.u-1.net/2007/10/03/953/' rel='bookmark' title='WordPress でユーザログインの有無に応じて表示を切り替える'>WordPress でユーザログインの有無に応じて表示を切り替える</a></li>
<li><a href='http://www.u-1.net/2007/09/20/939/' rel='bookmark' title='WordPress 2.2.3 のコメント通知メールの文字コードを変更する'>WordPress 2.2.3 のコメント通知メールの文字コードを変更する</a></li>
<li><a href='http://www.u-1.net/2007/06/21/847/' rel='bookmark' title='WordPress 2.2.1 Release'>WordPress 2.2.1 Release</a></li>
<li><a href='http://www.u-1.net/2007/05/31/822/' rel='bookmark' title='WordPress で特定の記事IDに対していろいろ表示したい'>WordPress で特定の記事IDに対していろいろ表示したい</a></li>
<li><a href='http://www.u-1.net/2007/04/06/763/' rel='bookmark' title='WordPress ME 2.1.3 のフィード配信でエラー'>WordPress ME 2.1.3 のフィード配信でエラー</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2011/07/12/2476/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2011/07/12/2476/" />
	</item>
		<item>
		<title>WordPress のオブジェクトキャッシュ機構で memcached を利用する</title>
		<link>http://www.u-1.net/2010/09/08/2349/</link>
		<comments>http://www.u-1.net/2010/09/08/2349/#comments</comments>
		<pubDate>Wed, 08 Sep 2010 07:22:11 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[memcached]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=2349</guid>
		<description><![CDATA[サーバを移行してみたことでいろいろ問題が発生しました。 常時 Web サーバを稼働させているとどこかのタイミングでメモリ不足が原因でプロセスが落ちまくる、Apache の負荷がスゴいことになるとかは、稼働するプロセスの数... [<a href="http://www.u-1.net/2010/09/08/2349/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.u-1.net/2010/09/07/2312/">サーバを移行</a>してみたことでいろいろ問題が発生しました。</p>
<p>常時 Web サーバを稼働させているとどこかのタイミングでメモリ不足が原因でプロセスが落ちまくる、Apache の負荷がスゴいことになるとかは、稼働するプロセスの数をとことん減らすことでたぶん改善。更新時の高負荷は XML-Sitemap が原因ぽいのでそれをちょっと停止して様子を見てみようかなと。</p>
<p>あとは、少しでも WordPress の動作を快適にしてみたかったので、ぐぐっている最中に見つけた、memcached を使ってオブジェクトキャッシュを行う方法を試してみました。</p>
<h3>memcached のインストール</h3>
<p>memcached と libevent はソースからインストールしました。</p>
<pre class="brush: bash; title: ; notranslate">
$ wget http://www.monkey.org/~provos/libevent-1.4.14b-stable.tar.gz
$ gtar xvzf libevent-1.4.14b-stable.tar.gz
$ cd libevent-1.4.14b-stable
$ ./configure
$ make
$ sudo make install
$ cd ../
$ wget http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz
$ gtar xvzf memcached-1.4.5.tar.gz
$ cd memcached-1.4.5
$ ./configure --with-libevent=/usr/local/libevent/
$ make
$ sudo make install
$ sudo cp scripts/memcached.sysv /etc/rc.d/init.d/memcached
$ sudo mkdir /var/run/memcached
$ sudo ln -s /usr/local/bin/memcached /usr/bin/
$ sudo /etc/rc.d/init.d/memcached start
</pre>
<h3>WordPress で memcached を利用する</h3>
<p>まずは PHP から memcached を利用できるようにするために、</p>
<pre class="brush: bash; title: ; notranslate">$ pecl install memcache </pre>
<p>足りないパッケージは適当に追加で。</p>
<p>その後、php.ini の最後に extension=memcache.so を追加して Apache を再起動。phpinfo() で確認すると、</p>
<p><img src="http://www.u-1.net/wp-content/uploads/2010/09/memcached.png" alt="" title="memcached 稼働中" width="500" height="317" class="aligncenter size-full wp-image-2361" /></p>
<p>こんな感じで動いてるのが確認できます。</p>
<p>その後、MySQL の設定ファイル my.cnf を編集して、</p>
<pre class="brush: plain; title: ; notranslate">
[mysqld]
query_cache_limit = 1M
query_cache_size = 24M
query_cache_min_res_unit= 4k
query_cache_type = 1
</pre>
<p>として再起動。</p>
<p>最後に、WordPress のオブジェクトキャッシュ機構で memcached を使用するために、 /wp-content/ 以下に <a href="http://plugins.trac.wordpress.org/browser/memcached/tags/2.0">http://plugins.trac.wordpress.org/browser/memcached/tags/2.0</a> からダウンロードした object-cache.php を保存して終了。</p>
<p>memcached の効き具合は、<a href="http://livebookmark.net/journal/2008/05/21/memcachephp-stats-like-apcphp/">memcache.php</a> で確認できるのでお好みで設置すればOK。</p>
<p>さて、これで少しはマシになったかなあ。表示されるクエリー数は結構減ってるみたいですが。体感できると嬉しいですね。</p>
<h3>参考</h3>
<ul>
<li><a href="http://another.maple4ever.net/archives/989/">hiromasa.another :o)» Blog Archive » WordPress の memcached による高速化</a></li>
<li><a href="http://f14s.biz/makoto/?p=760">WordPress+Memcached+MySQL最適化 | それでも地球はまわっている</a></li>
<li><a href="http://www.deftrash.com/blog/archives/2010/05/install_memcached.html">CentOS に memcached をインストールする | dTblog | デザインとプログラムの境界をさまようブログ</a></li>
<li><a href="http://www.alink.co.jp/tech/blog/2009/05/06/memcached-php%E3%81%A7memcached%E3%81%AE%E7%A8%BC%E5%83%8D%E7%8A%B6%E6%B3%81%E3%82%92%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF/">[memcached] PHPでmemcachedの稼働状況をチェック &#8211; ありんく tech-log</a></li>
</ul>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2009/11/07/1963/' rel='bookmark' title='WordPress の本文内にショートコードでコメントアウトを埋め込む方法'>WordPress の本文内にショートコードでコメントアウトを埋め込む方法</a></li>
<li><a href='http://www.u-1.net/2008/03/31/1147/' rel='bookmark' title='WordPress には最適かもしれない拍手ツール 【GJ!】'>WordPress には最適かもしれない拍手ツール 【GJ!】</a></li>
<li><a href='http://www.u-1.net/2007/05/16/800/' rel='bookmark' title='WordPress 2.2 リリース'>WordPress 2.2 リリース</a></li>
<li><a href='http://www.u-1.net/2007/04/24/780/' rel='bookmark' title='Nucleus から WordPress へのデータの移行'>Nucleus から WordPress へのデータの移行</a></li>
<li><a href='http://www.u-1.net/2007/03/03/741/' rel='bookmark' title='WordPress 2.1.1 は危険らしいですぞ?'>WordPress 2.1.1 は危険らしいですぞ?</a></li>
<li><a href='http://www.u-1.net/2007/01/27/695/' rel='bookmark' title='WordPress 2.1 へのデータ移行のテスト'>WordPress 2.1 へのデータ移行のテスト</a></li>
<li><a href='http://www.u-1.net/2006/10/29/390/' rel='bookmark' title='WordPress ME 2.0.5 リリース'>WordPress ME 2.0.5 リリース</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2010/09/08/2349/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2010/09/08/2349/" />
	</item>
		<item>
		<title>さくらのVPSへ一部コンテンツを引っ越しました</title>
		<link>http://www.u-1.net/2010/09/07/2312/</link>
		<comments>http://www.u-1.net/2010/09/07/2312/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 12:16:39 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[VPS]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=2312</guid>
		<description><![CDATA[先日サービスが開始されたさくらのVPSをお試し期間で使ってみたところ、かなり快適な感じだったので、自宅で運用しているWordPress他、一部のWebコンテンツを、そちらがわに移転することにしました。 移転したおもなサー... [<a href="http://www.u-1.net/2010/09/07/2312/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p>先日サービスが開始された<a href="http://vps.sakura.ad.jp/">さくらのVPS</a>をお試し期間で使ってみたところ、かなり快適な感じだったので、自宅で運用しているWordPress他、一部のWebコンテンツを、そちらがわに移転することにしました。</p>
<p>移転したおもなサービスは、DNSと www.u-1.net でアクセスできる WordPress で構築してあるメインコンテンツです。さくらの VPS 側で使っている OS も CentOS 5 の 64ビット版と、自宅の環境と全く同じだったので、移転は非常に簡単に行えました。</p>
<p>サーバが非常に快適に使えたのも大きな理由ですが、自宅の改装が行われている関係上、いつ回線が切れたり電源が落とされたりするか不安でしょうがなかったのも、今回の引っ越しの理由の一つですね。</p>
<p>ついでに、WordPress で使っているテーマの Obscure も、WordPress 3.0 以降の機能に対応した 2.0 がリリースされていたので、それを使ってみました。以前のテーマでは気づかなかったのですが、Internet Explorer 7 以前ではレイアウトが結構崩れてメニューが使い物にならなかったようなので……。</p>
<p>最新バージョンではその辺も改善されているようで、モダンブラウザならだいたい同じようなレイアウトで表示されるようですね。うちの場合は、IEが6割程度とやっぱり大多数なので、その辺のフォローがしっかりできてなかった点は反省しきりです。</p>
<p>DNSのAレコードも切り替えが順調に進んでいるようで、ほとんどのアクセスは新サーバ側に移っているとは思います。環境が全く同じなので、トラブることもないとは思いますが、今までの仮想環境に比べてメモリの容量が1/4になった割には、快適さがむしろ増しているように感じるのは、さすがに最適化の違いというところなんでしょうかね。これで980円／月というのは、確かにお得感はありますよ。</p>
<h3>でもメモリがきつい……</h3>
<p>なぜか、WordPress で新しい記事を投稿すると Apache のプロセスがスゴい勢いで増えていって、メモリを使い切ってしまって停止状態になってしまうので困ってます。設定ファイルで起動するプロセス数とかを抑えているけれど、改善できないとちょっとつらいかなあ。</p>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2012/01/08/2514/' rel='bookmark' title='FeedBurner 提供の RSS が Quick Cache の影響で更新遅れていた罠'>FeedBurner 提供の RSS が Quick Cache の影響で更新遅れていた罠</a></li>
<li><a href='http://www.u-1.net/2009/11/07/1963/' rel='bookmark' title='WordPress の本文内にショートコードでコメントアウトを埋め込む方法'>WordPress の本文内にショートコードでコメントアウトを埋め込む方法</a></li>
<li><a href='http://www.u-1.net/2009/07/08/1852/' rel='bookmark' title='Yahoo!ブログ検索に WordPress 更新を通知するスクリプト Ping to Y!J-BSC'>Yahoo!ブログ検索に WordPress 更新を通知するスクリプト Ping to Y!J-BSC</a></li>
<li><a href='http://www.u-1.net/2008/08/21/1330/' rel='bookmark' title='sim2ruby.css を使ってルビの表示を改善する'>sim2ruby.css を使ってルビの表示を改善する</a></li>
<li><a href='http://www.u-1.net/2007/11/01/967/' rel='bookmark' title='コメント欄に Gravatar を表示するようにしてみた'>コメント欄に Gravatar を表示するようにしてみた</a></li>
<li><a href='http://www.u-1.net/2006/12/20/535/' rel='bookmark' title='Snap Preview Anywhereを組み込んでみる(2)'>Snap Preview Anywhereを組み込んでみる(2)</a></li>
<li><a href='http://www.u-1.net/2006/12/12/521/' rel='bookmark' title='wp-tegakiプラグインを導入してみる'>wp-tegakiプラグインを導入してみる</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2010/09/07/2312/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2010/09/07/2312/" />
	</item>
		<item>
		<title>WordPress のテーマを Obscure に変更しました</title>
		<link>http://www.u-1.net/2010/04/27/2207/</link>
		<comments>http://www.u-1.net/2010/04/27/2207/#comments</comments>
		<pubDate>Tue, 27 Apr 2010 13:19:40 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Customize]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Theme]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=2207</guid>
		<description><![CDATA[wp.vicuna のスタイルも1年くらい続いて、自分的に飽きが来てしまったのと、来たる WordPress 3.0 のリリースに合わせる感じでリニューアルしてみました。 これまでのは割とシンプルな構成にしていたのですが... [<a href="http://www.u-1.net/2010/04/27/2207/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.u-1.net/wp-content/uploads/2010/04/ObscureSS.jpg" alt="" title="Obscureテーマスクリーンショット" width="500" height="293" class="aligncenter size-full wp-image-2208" /></p>
<p>wp.vicuna のスタイルも1年くらい続いて、自分的に飽きが来てしまったのと、来たる WordPress 3.0 のリリースに合わせる感じでリニューアルしてみました。</p>
<p>これまでのは割とシンプルな構成にしていたのですが、今回は見た目的な部分もきれいなテーマを使ってみようということで、海外で配布されていた <a href="http://wpcrunchy.com/2009/06/23/obscure-free-community-based-wordpress-theme/">Obscure</a> というテーマを採用しました。</p>
<p>Ajax を使った動的なページ構成で、これまでとはかなり違った印象のテーマですね。これの改造についてもメモがてら記しておこうと思います。</p>
<p><span id="more-2207"></span></p>
<h3>トップページのスライドショーの使い方</h3>
<p>説明書が分かりづらいんですが、指定したカテゴリーに属する記事で、適切に設定してやるとスライドショーに画像が表示されるようになります。</p>
<p>本来なら、テーマの各種設定を行う Obscure Options の画面内の Featured Gallery Option にてカテゴリを選択してやれば良いはずなのですが、上手く動かなかったので、テーマディレクトリにある functions.php に追記。</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
function option_featured_catname() {
    return 'lightnovel'; #ここにカテゴリスラッグを書く
}
add_filter('pre_option_obs_settings_featured-catname', 'option_featured_catname');
?&gt;
</pre>
<p>指定したカテゴリ内にある最初の画像、またはカスタムフィールドの image_value の値を使って、スライドショーが実行されます。</p>
<h4>サムネイル画像の指定</h4>
<p>スライドに使用される画像および、各記事のトップページで使われるサムネイルは、カスタムフィールドの image_value に指定した画像が使用されます。</p>
<p>ここで注意するのは、サムネイルを作成するのに使われているスクリプト <a href="http://www.darrenhoyt.com/2008/04/02/timthumb-php-script-released/">TimThumb.php</a> の仕様である「サムネイルとして表示できる画像はスクリプトを呼び出したドメインと同一の絶対パスにて記述する」<sup>*<a href="http://www.u-1.net/2010/04/27/2207/#footnote_0_2207" id="identifier_0_2207" class="footnote-link footnote-identifier-link" title="たとえば http://www.u-1.net/wp-content/uploads/2010/04/51ugU-DPuGL.jpg なら image_value には /wp-content/uploads/2010/04/51ugU-DPuGL.jpg と記述する必要がある">1</a></sup> ことですね。</p>
<p>これについてはテーマディレクトリにある index.php を改造して、image_value の値が URL であり、かつ自サイト内の画像である場合は、ホスト名の部分を取り除いてパス部分だけを渡してやるような処理を functions.php 内に記述しそれを通してサムネイルを出力するように変更しました。</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
#ホスト名を取り除いてパスだけ返す
function thumbnail_replace_sitename ($image) {
	$url = 'http://www.u-1.net';
	$theme_directory = get_option('template_directory');
	$noimage_url = $theme_directory.'/images/no-image-medium.jpg';
	if ($image === '') {$image = $noimage_url;}
	$image = str_replace($url, '', $image);
	return $image;
}
?&gt;
</pre>
<p>サムネイルを表示する部分のソースは、</p>
<pre class="brush: php; title: ; notranslate">
&lt;img src=&quot;&lt;?php bloginfo( 'template_directory' ); ?&gt;/timthumb.php?src=&lt;?php echo thumbnail_replace_sitename(get_post_meta( $post-&gt;ID, &quot;image_value&quot;, true )); ?&gt;&amp;amp;w=598&amp;amp;h=280&amp;amp;zc=1&quot; border=&quot;0&quot; alt=&quot;&lt;?php the_title(); ?&gt;&quot; /&gt;
</pre>
<p>のようになっています。</p>
<h3>日本語リソース環境下で英語表記を使いたいとき</h3>
<p>各種メニューの表記は英語ベースで行うようにしました。英語リソースを放り込むよりも、それを実現するプラグインがあったので、それを使いました。</p>
<ul>
<li><a href="http://www.feelwct.jp/staffblog/2008/02/wordpress.html">日本語版WordPressの曜日・月表記を英語にする方法 スタッフブログ 香川県 ホームページ制作会社 WEB CONSULTING FEEL</a></li>
</li>
<h4>月別アーカイブが年と表示されるのを回避</h4>
<p>ただし、これだけでは月別アーカイブの表記が 2010年 April のようになるので、さらにコアファイルの一部を書き換えます。</p>
<p>/wp-includes/general-template.php の</p>
<p><code>$text = sprintf(__('%1$s %2$d'), $wp_locale->get_month($arcresult->month), $arcresult->year);</code></p>
<p>を</p>
<p><code>$text = sprintf(__('%1$s, %2$d'), $wp_locale->get_month($arcresult->month), $arcresult->year);</code></p>
<p>のように変更しました。コンマが一個入るだけで変わるとか、変な感じですが……。</p>
<h3>フッターの難読化を解除する</h3>
<p>フッターを編集しようとしたら BASE64 でエンコードされたデータが入っていただけでこりゃ困ったってなったのですが、少し探してみたらそれを復号してくれるサイトがあったので、それで得られたソースで置き換えました。</p>
<ul>
<li><a href="http://www.tareeinternet.com/scripts/byterun.php">php $_F=__FILE__;$_X= Byterun Decoder</a></li>
</ul>
<h3>Trackback と Pingbackの表示</h3>
<p>なぜかコメントだけ表示され、Trackback と Pingback が表示されないテーマだったので、それを表示するようにしました。</p>
<p>comments.php に手を入れ、コメント表示部分の前に Trackback などの表示スペースを作成しました。</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php $pings_count = pings_count();if ($pings_count === 0 ) : ?&gt;
&lt;h2 class=&quot;comment-head&quot;&gt;No Trackback to &lt;?php the_title(); ?&gt;&lt;/h2&gt;
&lt;?php elseif($pings_count === 1): ?&gt;
&lt;h2 class=&quot;comment-head&quot;&gt;One Trackback to &lt;?php the_title(); ?&gt;&lt;/h2&gt;
&lt;?php wp_list_comments('type=pings&amp;callback=wp_custmized_pings'); ?&gt;
&lt;?php else: ?&gt;
&lt;h2 class=&quot;comment-head&quot;&gt;&lt;?php echo $pings_count ?&gt; Trackbacks to &lt;?php the_title(); ?&gt;&lt;/h2&gt;
&lt;?php wp_list_comments('type=pings&amp;callback=wp_custmized_pings'); ?&gt;
&lt;?php endif; ?&gt;
&lt;h2 class=&quot;comment-head&quot;&gt;&lt;?php if(comments_open()) { comments_number('No Response to ', '1 Response to ', '% Responses to ' ); the_title(); } else { echo 'COMMENTS ARE CLOSED'; } ?&gt;&lt;/h2&gt;
&lt;?php if ( have_comments() ) : ?&gt;
&lt;ol class=&quot;comment-list&quot;&gt;
	&lt;?php wp_list_comments('type=comment&amp;callback=wp_threaded_comments'); ?&gt;
&lt;/ol&gt;
</pre>
<p>ここで、Trackback などの数を求める関数 pings_count() を functions.php 内に追加しておきます。</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
	function pings_count() {
		global $id;
		$comments_by_type = &amp;separate_comments(get_comments('status=approve&amp;post_id=' . $id));
		$pings_count = count($comments_by_type['pings']);
		return $pings_count;
	}
?&gt;
</pre>
<p>pings_count() はここだけでなく、各所のメタ情報で Trackback の数を表示するのにも使っています。</p>
<h3>抜粋部分の表示</h3>
<p>スライドショーで使用されている内容の抜粋は、オリジナルは <a href="http://labitacora.net/index.php?p=152">limit-post</a> が使われているのですが、日本語対応していないので、<a href="http://19-d.com/posts/view/11.html">日本語対応版</a>を使用しました。</p>
<p>また、本文の抜粋も同様に limit-post が使用されていたのですが、個人的な好みで、ここは <?php the_excerpt();?> を使用しています。WP Multibyte Patch が利用可能な日本語版ではこちらの方が柔軟に設定できるでしょう。</p>
<p>また、続きを読むリンクも加工可能になっていたので、これまた functions.php に追記しました。</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
function new_excerpt_more($post) {
	return '... [&lt;a href=&quot;'. get_permalink($post-&gt;ID) . '&quot;&gt;' . '&lt;span class=&quot;read-the-rest&quot;&gt;Read more&lt;/span&gt;' . '&lt;/a&gt;]';
}
add_filter('excerpt_more', 'new_excerpt_more');
?&gt;
</pre>
<h3>Head Cleaner を有効にする</h3>
<p>Head Cleaner でヘッダ部分の整形を行っているのですが、 header.php 内に記述されている <code><?php wp_head(); ?></code> の位置が、JavaScript のロード部分よりも前にあり、効かなかったので位置を変更しヘッダ部分の head タグ終了の直前へ移動しました。</p>
<h3>利用プラグイン変更</h3>
<p>関連記事を表示するためのプラグインを、WordPress Related Posts から Yet Another Related Posts Plugin に変更しました。</p>
<p>アーカイブを表示するためのプラグインを、PS Auto Sitemap から wp-mosquito に変更しました。</p>
<hr />
<p>と、こんな感じでカスタマイズをしていきました。他にも細かい部分はありますが、 CSS とかの記述については気合いで乗り切ったというか(笑)</p>
<p>テーマを変更したおかげか、プラグインを変更したおかげか、MySQL へ発行するクエリの数が結構<del datetime="2010-04-28T03:20:19+00:00">減ったのは良かったかも</del><ins datetime="2010-04-28T03:20:19+00:00">勘違いで増えていた……</ins>。気持ち重いときもあるけれど、そこはこれからもこつこつ改良していくということで、しばらくはこのテーマにお世話になりそうです。</p>
<p>装いも新たになりましたが、やることは変わりありませんので、これからもよろしくお願いします。</p>
<ol class="footnotes"><li id="footnote_0_2207" class="footnote">たとえば http://www.u-1.net/wp-content/uploads/2010/04/51ugU-DPuGL.jpg なら image_value には /wp-content/uploads/2010/04/51ugU-DPuGL.jpg と記述する必要がある</li></ol><p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2009/11/07/1963/' rel='bookmark' title='WordPress の本文内にショートコードでコメントアウトを埋め込む方法'>WordPress の本文内にショートコードでコメントアウトを埋め込む方法</a></li>
<li><a href='http://www.u-1.net/2009/11/05/1961/' rel='bookmark' title='WordPress の wp-tegaki プラグインを ImageMagick を使って動くようにしてみる'>WordPress の wp-tegaki プラグインを ImageMagick を使って動くようにしてみる</a></li>
<li><a href='http://www.u-1.net/2008/02/29/1115/' rel='bookmark' title='WordPress で Action Streams もどきを実現するプラグイン SimpleLife'>WordPress で Action Streams もどきを実現するプラグイン SimpleLife</a></li>
<li><a href='http://www.u-1.net/2007/11/13/983/' rel='bookmark' title='WP Multibyte Patch で WordPress 2.3 のマルチバイト文字関係の不具合を修正する'>WP Multibyte Patch で WordPress 2.3 のマルチバイト文字関係の不具合を修正する</a></li>
<li><a href='http://www.u-1.net/2007/03/03/741/' rel='bookmark' title='WordPress 2.1.1 は危険らしいですぞ?'>WordPress 2.1.1 は危険らしいですぞ?</a></li>
<li><a href='http://www.u-1.net/2007/01/27/695/' rel='bookmark' title='WordPress 2.1 へのデータ移行のテスト'>WordPress 2.1 へのデータ移行のテスト</a></li>
<li><a href='http://www.u-1.net/2006/10/29/390/' rel='bookmark' title='WordPress ME 2.0.5 リリース'>WordPress ME 2.0.5 リリース</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2010/04/27/2207/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2010/04/27/2207/" />
	</item>
		<item>
		<title>WordPress の本文内にショートコードでコメントアウトを埋め込む方法</title>
		<link>http://www.u-1.net/2009/11/07/1963/</link>
		<comments>http://www.u-1.net/2009/11/07/1963/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 02:55:25 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[shortcode]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1963</guid>
		<description><![CDATA[自分用のメモを WordPress のエントリ内に記入したいとき、HTMLによるコメントアウトをすると、デザインが崩れたりする不都合*1が発生したりするようです。 検索の仕方がマズかったのか、本文内に簡単にコメントを埋め... [<a href="http://www.u-1.net/2009/11/07/1963/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p>自分用のメモを WordPress のエントリ内に記入したいとき、HTMLによるコメントアウトをすると、デザインが崩れたりする不都合<sup>*<a href="http://www.u-1.net/2009/11/07/1963/#footnote_0_1963" id="identifier_0_1963" class="footnote-link footnote-identifier-link" title="内部的な動作上、仕様と判断されるところもあるようですが">1</a></sup>が発生したりするようです。</p>
<p>検索の仕方がマズかったのか、本文内に簡単にコメントを埋め込む方法はないものかと探してみたのですが見つからず、どうにかしようと思ってみたら、ショートコードを使えば何も悩む必要はなかったというオチ。</p>
<p>コードで囲んだ文字列に対して何かを返すというショートコードの動作の原理上、だったら何も返さなければ良いのだという、当たり前といえば当たり前の結論。ここにたどり着くまでに検索しまくった時間を返せよう!?</p>
<p>ということで、使用しているテーマ内にある functions.php に以下の内容を追記。</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
function ignore_shortcode( $atts, $content = null ) {
    return null;
}
add_shortcode('ignore', 'ignore_shortcode');
?&gt;
</pre>
<p>本当に何もしないショートコードですが、こうしてやると <code>&#91;ignore&#93;コメントアウト&#91;/ignore&#93;</code>のような記述で、通常は表示されないコメントっぽくエントリ内に自分用のメモを記述することができました。</p>
<p>こんなのに悩んでどうするって感じですけれどね。</p>
<ol class="footnotes"><li id="footnote_0_1963" class="footnote">内部的な動作上、<a href="http://ja.forums.wordpress.org/topic/1593">仕様と判断される</a>ところもあるようですが</li></ol><p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2008/03/31/1147/' rel='bookmark' title='WordPress には最適かもしれない拍手ツール 【GJ!】'>WordPress には最適かもしれない拍手ツール 【GJ!】</a></li>
<li><a href='http://www.u-1.net/2007/05/16/800/' rel='bookmark' title='WordPress 2.2 リリース'>WordPress 2.2 リリース</a></li>
<li><a href='http://www.u-1.net/2007/03/03/741/' rel='bookmark' title='WordPress 2.1.1 は危険らしいですぞ?'>WordPress 2.1.1 は危険らしいですぞ?</a></li>
<li><a href='http://www.u-1.net/2007/01/27/695/' rel='bookmark' title='WordPress 2.1 へのデータ移行のテスト'>WordPress 2.1 へのデータ移行のテスト</a></li>
<li><a href='http://www.u-1.net/2007/01/16/643/' rel='bookmark' title='WordPress ME 2.0.7 リリース'>WordPress ME 2.0.7 リリース</a></li>
<li><a href='http://www.u-1.net/2007/01/06/583/' rel='bookmark' title='WordPress 2.0.6 がリリース'>WordPress 2.0.6 がリリース</a></li>
<li><a href='http://www.u-1.net/2006/10/29/390/' rel='bookmark' title='WordPress ME 2.0.5 リリース'>WordPress ME 2.0.5 リリース</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2009/11/07/1963/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2009/11/07/1963/" />
	</item>
		<item>
		<title>WordPress の wp-tegaki プラグインを ImageMagick を使って動くようにしてみる</title>
		<link>http://www.u-1.net/2009/11/05/1961/</link>
		<comments>http://www.u-1.net/2009/11/05/1961/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 12:21:16 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[ImageMagick]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[wp-tegaki]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1961</guid>
		<description><![CDATA[ブログのエントリにワンポイントを加えることに重宝している wp-tegaki プラグインですが、これを昨日インストールして遊んでみた ImageMagick と PECL::Imagick を使って動くように書き直してみ... [<a href="http://www.u-1.net/2009/11/05/1961/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p>ブログのエントリにワンポイントを加えることに重宝している <a href="http://wppluginsj.sourceforge.jp/wp-tegaki/">wp-tegaki</a> プラグインですが、これを<a href="http://www.u-1.net/2009/11/04/1960/">昨日インストールして遊んでみた</a> ImageMagick と PECL::Imagick を使って動くように書き直してみました。</p>
<p>といっても、実際に変更する必要があった部分は、画像の出力部分である、 wp-tegaki-img.php の後半数行だけで、思ったより簡単に実現できたような印象です。というか、そもそもの Imagick の使い方が難解に思えてしまって、そちらを覚える方に苦労したというか。</p>
<p>まぁ、見た目は</p>
<p><img src="http://www.u-1.net/wp-content/plugins/wp-tegaki/wp-tegaki-img.php?tegaki_id=1961-0" alt="こんな感じで何も変わってないです" width="369" height="32" /></p>
<p>けれどね!</p>
<h3>でもまあそれじゃあ芸がないので少し機能追加してみます</h3>
<p><img src="http://www.u-1.net/wp-content/plugins/wp-tegaki/wp-tegaki-img.php?tegaki_id=1961-1" alt="じゃじゃーん!!" width="172" height="39" /></p>
<p><img src="http://www.u-1.net/wp-content/plugins/wp-tegaki/wp-tegaki-img.php?tegaki_id=1961-2" alt="縁取線は2種類まで使えます。!!" width="362" height="45" /></p>
<p>まぁ、こんな感じでパラメータの追加で縁取りができるようにしてみたり。</p>
<p>適当に改造したせいか、<del datetime="2009-11-05T12:48:03+00:00">img の width と height の値が与えられてなかったり</del><sup>*<a href="http://www.u-1.net/2009/11/05/1961/#footnote_0_1961" id="identifier_0_1961" class="footnote-link footnote-identifier-link" title="これは修正できました">1</a></sup>怪しいところがありますが、割と便利に使えるようになったように思いますよ。</p>
<h3>問題は</h3>
<p>要求する環境がちょっとシビアなところかなあ。ImageMagick のバージョンは新しいにこしたことがないです。CentOS 5.4 標準のバージョンである 6.2.8 では使いたい関数がサポートされてなく、手動で更新することになりましたからねえ。</p>
<p>ということで、現在このサーバで使用している ImageMagick のバージョンは、6.5.3 なのです。</p>
<ol class="footnotes"><li id="footnote_0_1961" class="footnote">これは修正できました</li></ol><p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2010/04/27/2207/' rel='bookmark' title='WordPress のテーマを Obscure に変更しました'>WordPress のテーマを Obscure に変更しました</a></li>
<li><a href='http://www.u-1.net/2009/11/04/1960/' rel='bookmark' title='CentOS 5.4 に ImageMagick をインストールして遊んでみる'>CentOS 5.4 に ImageMagick をインストールして遊んでみる</a></li>
<li><a href='http://www.u-1.net/2008/02/29/1115/' rel='bookmark' title='WordPress で Action Streams もどきを実現するプラグイン SimpleLife'>WordPress で Action Streams もどきを実現するプラグイン SimpleLife</a></li>
<li><a href='http://www.u-1.net/2007/11/13/983/' rel='bookmark' title='WP Multibyte Patch で WordPress 2.3 のマルチバイト文字関係の不具合を修正する'>WP Multibyte Patch で WordPress 2.3 のマルチバイト文字関係の不具合を修正する</a></li>
<li><a href='http://www.u-1.net/2007/03/03/741/' rel='bookmark' title='WordPress 2.1.1 は危険らしいですぞ?'>WordPress 2.1.1 は危険らしいですぞ?</a></li>
<li><a href='http://www.u-1.net/2007/01/27/695/' rel='bookmark' title='WordPress 2.1 へのデータ移行のテスト'>WordPress 2.1 へのデータ移行のテスト</a></li>
<li><a href='http://www.u-1.net/2006/10/29/390/' rel='bookmark' title='WordPress ME 2.0.5 リリース'>WordPress ME 2.0.5 リリース</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2009/11/05/1961/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2009/11/05/1961/" />
	</item>
		<item>
		<title>Yahoo!ブログ検索に WordPress 更新を通知するスクリプト Ping to Y!J-BSC</title>
		<link>http://www.u-1.net/2009/07/08/1852/</link>
		<comments>http://www.u-1.net/2009/07/08/1852/#comments</comments>
		<pubDate>Wed, 08 Jul 2009 08:19:27 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[Yahoo]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1852</guid>
		<description><![CDATA[Yahoo! ブログ検索になぜか引っかからない我がサイト。 どうやら WordPress で構築されたブログと Yahoo! ブログ検索はいまいち相性が良くないようです。 検索してみると四苦八苦されている方がたくさんいら... [<a href="http://www.u-1.net/2009/07/08/1852/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p>Yahoo! ブログ検索になぜか引っかからない我がサイト。</p>
<p>どうやら WordPress で構築されたブログと Yahoo! ブログ検索はいまいち相性が良くないようです。</p>
<p>検索してみると四苦八苦されている方がたくさんいらっしゃって、その中で特に参考になりそうなのが <a href="http://www.1010uzu.com/boyaki/200905-26161158.html">【まとめ】WordPress を Yahoo! ブログ検索させる方法 その10：トイレのうず／ぼやき</a> というエントリ。</p>
<p>Yahoo! 側の説明にある更新通知先に素直に Ping 送ってもだめなよう<sup>*<a href="http://www.u-1.net/2009/07/08/1852/#footnote_0_1852" id="identifier_0_1852" class="footnote-link footnote-identifier-link" title="それでもYahoo!ブログ検索にインデックスされない・・・という方へ | Kuwata&rsquo;s Blog くわぶろが参考になりました">1</a></sup>。</p>
<p>実際には <code>http://api.my.yahoo.co.jp/rss/ping?u=最新記事のURL</code> という形式じゃないとクローラが来てくれないということです。</p>
<p>さて、じゃあ、どうやって更新後にこの URL を叩いてやるか? 手動でやるのはばからしいので、以前 <a href="http://www.u-1.net/2008/04/18/1163/">はてなアンテナに WordPress の更新を即通知する | MOMENTS</a> で作成したスクリプトを流用してチェック時に sitemap.xml のタイムスタンプが5分以内だったら該当URLにアクセスしてやればいいやという形で解決。</p>
<p>ヘッダに RSS1.0 のリンクも埋め込んで、スクリプトもとりあえず動いてはいるのですが、実際に検索結果が出るまでは成功したかどうかが分からないのが辛いところですね。しばらくしたら検索してみようっと。</p>
<p>使用した Perl スクリプトは続きを読むの後に。</p>
<p><span id="more-1852"></span></p>
<h3>ping2yj-bsc.pl</h3>
<p><a href="http://www.arnebrachhold.de/projects/wordpress-plugins/google-xml-sitemaps-generator/">Google (XML) Sitemaps Generator for WordPress</a> で生成した sitemap.xml を適当に読み込んで最新記事のURLを決め打ちしています。生成するプラグインのバージョンやパーマリンクの構成によってはうまく動かない可能性があります。</p>
<pre class="brush: perl; title: ; notranslate">
#!/usr/bin/perl
use strict;
use Readonly;
use LWP::Simple;

Readonly::Scalar my $SITEMAP =&gt; './sitemap.xml'; #sitemal.xmlへのパスを適宜編集
Readonly::Scalar my $LOG     =&gt; './accessresult.txt';

open my $FH,'&lt;',$SITEMAP;
my @URL;
my $count;
while(&lt;$FH&gt;){
  my $line = $_;
  if($line=~/&lt;loc&gt;(.*)&lt;\/loc&gt;/) {
    push @URL,$1;
    last if ($count++ &gt; 5); #URLを適当数拾ったらループを抜ける
  }
}
close($FH);
#最新記事のパーマリンクは配列の2番目に格納されている(1番目はブログトップのURL)
my $URL = &quot;http://api.my.yahoo.co.jp/rss/ping?u=&quot;.$URL[1];

my $result = get($URL);
die &quot;Couldn't get it!&quot; unless defined $result;
open my $OUT,'&gt;',$LOG; #スクリプトのアクセス結果を accessresult.txt として同じ場所に保存しておきます
print $OUT $result;
close($OUT);
exit;
</pre>
<p>sitemap.xml のタイムスタンプ比較は別のスクリプトで行っていて、私の場合は、現在の時刻から5分以内に更新された場合はこのスクリプトを実行するようにしています。</p>
<p>このスクリプト単体で処理する場合は、タイムスタンプのチェックの処理を組み込めば動くと思います。あとは cron に登録して適当な間隔で実行すれば OK ですね。</p>
<p>実行結果は</p>
<pre class="brush: plain; title: ; notranslate">
Refresh requested: http://www.u-1.net/2009/07/08/1852/

Blog Search: Successfully refresh requested
My Yahoo! RSS reader: Refresh requested.
About &quot;Blog Search&quot;, see &quot;http://blog-search.yahoo.co.jp/&quot;
</pre>
<p>となっているので、通知はちゃんとしてますね。クローラもすぐに来てるのでこれでだめなら別の原因かなあ。</p>
<h3>登録されないのはなぜ!?</h3>
<p>んー、クローラも来てるし、ちゃんと RSS1.0 の情報へリダイレクトさせてそれを読んでるはずなのに反映されませんねえ。しばらく様子見で行くしかないかな。</p>
<ol class="footnotes"><li id="footnote_0_1852" class="footnote"><a href="http://www.ksa-japan.com/kuwata/blog/post/365/">それでもYahoo!ブログ検索にインデックスされない・・・という方へ | Kuwata’s Blog くわぶろ</a>が参考になりました</li></ol><p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2008/03/31/1147/' rel='bookmark' title='WordPress には最適かもしれない拍手ツール 【GJ!】'>WordPress には最適かもしれない拍手ツール 【GJ!】</a></li>
<li><a href='http://www.u-1.net/2007/05/16/800/' rel='bookmark' title='WordPress 2.2 リリース'>WordPress 2.2 リリース</a></li>
<li><a href='http://www.u-1.net/2007/03/03/741/' rel='bookmark' title='WordPress 2.1.1 は危険らしいですぞ?'>WordPress 2.1.1 は危険らしいですぞ?</a></li>
<li><a href='http://www.u-1.net/2007/01/27/695/' rel='bookmark' title='WordPress 2.1 へのデータ移行のテスト'>WordPress 2.1 へのデータ移行のテスト</a></li>
<li><a href='http://www.u-1.net/2007/01/16/643/' rel='bookmark' title='WordPress ME 2.0.7 リリース'>WordPress ME 2.0.7 リリース</a></li>
<li><a href='http://www.u-1.net/2007/01/06/583/' rel='bookmark' title='WordPress 2.0.6 がリリース'>WordPress 2.0.6 がリリース</a></li>
<li><a href='http://www.u-1.net/2006/10/29/390/' rel='bookmark' title='WordPress ME 2.0.5 リリース'>WordPress ME 2.0.5 リリース</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2009/07/08/1852/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2009/07/08/1852/" />
	</item>
		<item>
		<title>WordPress 2.8.1 beta 1 でプラグイン管理でアクセス権に関するエラーが発生</title>
		<link>http://www.u-1.net/2009/06/25/1830/</link>
		<comments>http://www.u-1.net/2009/06/25/1830/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 12:06:15 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Post templates]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1830</guid>
		<description><![CDATA[橋本浩一のなまぐさブログ さんより Post Templatesプラグイン WordPress 2.8と相性悪し… という Trackback をいただいて、ほう、そんなこともあるのかと自分の環境で実験してみたらひどい目... [<a href="http://www.u-1.net/2009/06/25/1830/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><a href="http://babbitt.xrea.jp/">橋本浩一のなまぐさブログ</a> さんより <a href="http://babbitt.xrea.jp/archives/197">Post Templatesプラグイン WordPress 2.8と相性悪し…</a> という Trackback をいただいて、ほう、そんなこともあるのかと自分の環境で実験してみたらひどい目に遭ったのでメモ。</p>
<p>件の Post Templates や<a href="http://www.g-loaded.eu/2006/01/05/add-meta-tags-wordpress-plugin/">Add-Meta-Tags</a>など私の環境で使っているプラグインの一部が WordPress 2.8.1 beta 1 に更新するとさらなる不具合が発生してました。</p>
<p>該当プラグインの管理画面へアクセスしようとすると「このページにアクセスするための十分なアクセス権がありません。」と表示され、例えば Post Templates ではテンプレートの編集や新規作成が行えなくなってしまいます。</p>
<p><del datetime="2009-08-09T09:44:19+00:00">2.8 で上書きし直したら編集できるようになったので、これは 2.8.1 beta 1 でのエンバグってことでしょうか?</del></p>
<p><del datetime="2009-08-09T09:44:19+00:00">WordPress の Trac 見てみたけどそれっぽいチケットないのかなあ、プラグインの方の不具合は散見されてるようだからどちらが原因かの追求は早くされそうですが、正式版でもこの状態だとバージョンアップできなくて困ってしまいますね。</del></p>
<p><ins datetime="2009-08-09T09:44:19+00:00"><a href="http://ja.wordpress.org/2009/07/10/wordpress-281/">WordPress 2.8.1 で改修</a>された「明示的な権限チェックを行わないプラグインに対するセキュリティを強化」に該当するようですね。</ins></p>
<p>Post Templates 3.4.0 ではこの現象も改善されています。</p>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2008/03/31/1147/' rel='bookmark' title='WordPress には最適かもしれない拍手ツール 【GJ!】'>WordPress には最適かもしれない拍手ツール 【GJ!】</a></li>
<li><a href='http://www.u-1.net/2007/05/16/800/' rel='bookmark' title='WordPress 2.2 リリース'>WordPress 2.2 リリース</a></li>
<li><a href='http://www.u-1.net/2007/03/03/741/' rel='bookmark' title='WordPress 2.1.1 は危険らしいですぞ?'>WordPress 2.1.1 は危険らしいですぞ?</a></li>
<li><a href='http://www.u-1.net/2007/01/27/695/' rel='bookmark' title='WordPress 2.1 へのデータ移行のテスト'>WordPress 2.1 へのデータ移行のテスト</a></li>
<li><a href='http://www.u-1.net/2007/01/16/643/' rel='bookmark' title='WordPress ME 2.0.7 リリース'>WordPress ME 2.0.7 リリース</a></li>
<li><a href='http://www.u-1.net/2006/12/27/552/' rel='bookmark' title='Google Sitemap Generator 3 Beta でMySQLエラー'>Google Sitemap Generator 3 Beta でMySQLエラー</a></li>
<li><a href='http://www.u-1.net/2006/10/29/390/' rel='bookmark' title='WordPress ME 2.0.5 リリース'>WordPress ME 2.0.5 リリース</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2009/06/25/1830/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2009/06/25/1830/" />
	</item>
		<item>
		<title>WP-Table Reloaded 日本語リソース</title>
		<link>http://www.u-1.net/2009/06/19/1812/</link>
		<comments>http://www.u-1.net/2009/06/19/1812/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 11:45:50 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[L10N]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[wp-table]]></category>

		<guid isPermaLink="false">http://www.u-1.net/2009/06/19/1812/</guid>
		<description><![CDATA[WP-Table をベースに改良された WordPress でテーブルの管理を行うプラグイン WP-Table Reloaded の日本語リソースです。 WordPress 2.8 日本語版 での動作を確認しています。 ... [<a href="http://www.u-1.net/2009/06/19/1812/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><a href="http://wordpress.org/extend/plugins/wp-table/">WP-Table</a> をベースに改良された WordPress でテーブルの管理を行うプラグイン <a href="http://tobias.baethge.com/wordpress-plugins/wp-table-reloaded-english/">WP-Table Reloaded</a> の日本語リソースです。</p>
<p>WordPress 2.8 日本語版 での動作を確認しています。</p>
<p>使用方法はアーカイブをダウンロード・展開後、WP-Table Reloaded をインストールしたディレクトリ以下にある languages ディレクトリに wp-table-reloaded-ja.mo をコピーするとメニューが日本語化されます。</p>
<p>WP-Table はテーブル生成時に大量のクエリーをデータベースに投げていましたが、こちらのプラグインではその点も改善され、かなり低コストで動作するようになっているようです。オリジナル版はすでにメンテナンスされていませんので、テーブルを管理するプラグインとしてはこちらが良いようです。</p>
<p>ただ、やっぱり日本語のファイルのインポートは文字化けしてしまって使えないですね。それ以外については代替として十分以上のプラグインです。</p>
<p><ins datetime="2009-08-09T04:10:49+00:00">2009-08-09 1.4.1対応の日本語リソースに更新しました</ins></p>
<ul class="download-this"><li><a href="http://www.u-1.net/downloads/wp-table-reloaded-ja.zip">WP-Table-Reloaded-1.4.1-ja.zip (974)</a><br /><span class="update">Update:2009-08-09</span></li></ul>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2012/01/07/2510/' rel='bookmark' title='Post Templates 4.0 日本語リソース'>Post Templates 4.0 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2011/12/29/2498/' rel='bookmark' title='AddQuicktag 日本語リソース(2.0.0以降対応版)'>AddQuicktag 日本語リソース(2.0.0以降対応版)</a></li>
<li><a href='http://www.u-1.net/2008/01/17/1070/' rel='bookmark' title='WP-PostRatings 日本語リソース'>WP-PostRatings 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/11/1061/' rel='bookmark' title='Search Regex 日本語リソース'>Search Regex 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/10/1058/' rel='bookmark' title='Post templates 日本語リソース(旧版)'>Post templates 日本語リソース(旧版)</a></li>
<li><a href='http://www.u-1.net/2008/01/09/1056/' rel='bookmark' title='wp-Table の日本語リソース'>wp-Table の日本語リソース</a></li>
<li><a href='http://www.u-1.net/2006/10/05/72/' rel='bookmark' title='WP-ContactFormの日本語化'>WP-ContactFormの日本語化</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2009/06/19/1812/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2009/06/19/1812/" />
	</item>
		<item>
		<title>FC2拍手を携帯サイト側にも表示する</title>
		<link>http://www.u-1.net/2009/04/14/1746/</link>
		<comments>http://www.u-1.net/2009/04/14/1746/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 01:03:03 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Ktai Style]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Web拍手]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1746</guid>
		<description><![CDATA[WordPress の携帯電話対応としては現在 Ktai Style を利用しております。 携帯電話対応プラグインとしては、対応環境さえ揃っていれば最強なこのプラグイン、使うのに多少の慣れと、知識と、根性が必要になります... [<a href="http://www.u-1.net/2009/04/14/1746/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p>WordPress の携帯電話対応としては現在 <a href="http://wppluginsj.sourceforge.jp/ktai_style/">Ktai Style</a> を利用しております。</p>
<p>携帯電話対応プラグインとしては、対応環境さえ揃っていれば最強なこのプラグイン、使うのに多少の慣れと、知識と、根性が必要になりますが、暇を見つけてカスタマイズしていったりしてます。</p>
<p>といっても<a href="/2008/05/02/1190/"> Adsense を表示</a>したり、各種プラグインの表示を組み込んだりと、基本的な部分の改造ですが。まぁ、手を入れなくても簡単に携帯対応できるので便利なんですよね。</p>
<p>で、以前もやって失敗した FC2 拍手の携帯対応をしてみました。</p>
<p>現在、通常 PC でのアクセス時に使用されているテンプレートの、拍手表示画面は WordPress 用にちょこっと手を入れて</p>
<pre class="brush: plain; title: ; notranslate">
&lt;a rel=&quot;nofollow&quot; href=&quot;http://clap.fc2.com/post/＜ユーザID＞/?url=&lt;?php the_permalink(); ?&gt;&amp;title=&lt;?php the_title(); ?&gt;&quot; target=&quot;_blank&quot; title=&quot;拍手する by FC2&quot;&gt;
&lt;img src=&quot;http://clap.fc2.com/images/button/white/＜ユーザID＞?url=&lt;?php the_permalink(); ?&gt;&quot; alt=&quot;拍手する&quot; style=&quot;border:none;&quot; /&gt;&lt;/a&gt;
</pre>
<p>のようになっています。これをそのまま Ktai Style で使用しているテンプレートの single.php にでも書いてやれば動くかと思ったら、拍手のリンクをクリックしても「ページ作成ができません」というエラーが表示されて動作していない模様。</p>
<p>出力された HTML のソースを見てみると、どうやら <?php the_permalink(); ?> で出力されるパーマリンクでドメイン名を含む部分が省略されていました<sup>*<a href="http://www.u-1.net/2009/04/14/1746/#footnote_0_1746" id="identifier_0_1746" class="footnote-link footnote-identifier-link" title="表示を簡略化する動作をしてるみたいですね">1</a></sup>。</p>
<pre class="brush: plain; title: ; notranslate">http://www.u-1.net/hogehoge/ → /hogehoge/</pre>
<p>みたいな感じですね。なので、手っ取り早いのは削除される部分を直接書いてやると。</p>
<pre class="brush: plain; title: ; notranslate">
&lt;a rel=&quot;nofollow&quot; href=&quot;http://clap.fc2.com/post/＜ユーザID＞/?url=http://www.u-1.net&lt;?php the_permalink(); ?&gt;&amp;title=&lt;?php the_title(); ?&gt;&quot; target=&quot;_blank&quot; title=&quot;拍手する by FC2&quot;&gt;
&lt;img src=&quot;http://clap.fc2.com/images/button/white/＜ユーザID＞?url=http://www.u-1.net&lt;?php the_permalink(); ?&gt;&quot; alt=&quot;拍手する&quot; style=&quot;border:none;&quot; /&gt;&lt;/a&gt;
</pre>
<p>あとは、画像が表示されないと不便なので、プラグインの FAQ にある<a href="http://wppluginsj.sourceforge.jp/ktai_style/qa/#keep_amazon">Amazon の画像をそのまま表示したい</a>を参考にfunctions.php にフック関数を追加してやればOK。</p>
<pre class="brush: php; title: ; notranslate">&lt;?php
function ks_keep_externalsite_image($replace, $orig, $src) {
	// Amazon や G-tools 、 FC2拍手の画像を表示する
	if (preg_match('#^http://ecx.images-amazon.com/images/|^http://g-images.amazon.com/images/|^http://clap.fc2.com/images/', $src)) {
		$replace = $orig;
	}
	return $replace;
}
add_filter('image_to_link/ktai_style.php', 'ks_keep_externalsite_image', 10,3);
?&gt;</pre>
<p>ね、簡単でしょ?</p>
<p>……というか、マニュアル読めば気づいたネタでした。</p>
<ol class="footnotes"><li id="footnote_0_1746" class="footnote"><a href="http://wppluginsj.sourceforge.jp/ktai_style/customize/">表示を簡略化する動作</a>をしてるみたいですね</li></ol><p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2008/11/05/1559/' rel='bookmark' title='Twitpress を twicco に力業で対応させてみる'>Twitpress を twicco に力業で対応させてみる</a></li>
<li><a href='http://www.u-1.net/2008/10/26/1538/' rel='bookmark' title='Twitpress の通知 URL にパーマリンクをちゃんと使いたい'>Twitpress の通知 URL にパーマリンクをちゃんと使いたい</a></li>
<li><a href='http://www.u-1.net/2008/01/11/1061/' rel='bookmark' title='Search Regex 日本語リソース'>Search Regex 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/09/1055/' rel='bookmark' title='DMSGuestbook の日本語対応'>DMSGuestbook の日本語対応</a></li>
<li><a href='http://www.u-1.net/2006/11/06/431/' rel='bookmark' title='WP-PageNavi のおかしな挙動'>WP-PageNavi のおかしな挙動</a></li>
<li><a href='http://www.u-1.net/2006/10/12/131/' rel='bookmark' title='Mobile Eye+ で携帯電話閲覧に対応する'>Mobile Eye+ で携帯電話閲覧に対応する</a></li>
<li><a href='http://www.u-1.net/2006/10/02/48/' rel='bookmark' title='RSSフィードをサイドバーに挿入するプラグイン'>RSSフィードをサイドバーに挿入するプラグイン</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2009/04/14/1746/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2009/04/14/1746/" />
	</item>
		<item>
		<title>Twitpress を twicco に力業で対応させてみる</title>
		<link>http://www.u-1.net/2008/11/05/1559/</link>
		<comments>http://www.u-1.net/2008/11/05/1559/#comments</comments>
		<pubDate>Wed, 05 Nov 2008 14:59:59 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[patch]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1559</guid>
		<description><![CDATA[Twitter の日本語版向けサービスとして立ち上がった、twicco は特定の話題を扱うコミュニティを作ることができるサービス。 さっそく私も興味があるところに登録してみました。 で、それに関連する話題をブログにポスト... [<a href="http://www.u-1.net/2008/11/05/1559/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p>Twitter の日本語版向けサービスとして立ち上がった、<a href="http://twicco.jp/home">twicco</a> は特定の話題を扱うコミュニティを作ることができるサービス。</p>
<p>さっそく私も興味があるところに登録してみました。</p>
<p>で、それに関連する話題をブログにポストしたときに、コミュニティ向けに reply してやれると便利じゃね? と短絡的に考えた結果、またしても Twitpress をちょっとだけカスタマイズしてみました。</p>
<p>具体的な動作は、指定したカテゴリに属するポストがされたとき、指定したコミュニティ宛に reply 用の文字列 @～ を付けてやるという単純なものです。</p>
<p>既存のソースに数行追加するだけの簡単なものなので、ご参考までに。</p>
<p><span id="more-1559"></span></p>
<h3>ソースコード</h3>
<p>twitpress.php の関数、<code>twitpress_publish</code> を以下で置き換えます。</p>
<pre class="brush: php; title: ; notranslate">
//Publishes a tweet given only the postID
function twitpress_publish( $postID ){
	//get the post
	$post = get_post( $postID );

	//Now redundant check to make sure the post has been published

	if ( $post-&gt;post_status == &quot;publish&quot; ){
		//特定のカテゴリに属する投稿はtwicco宛に送る
		$twicco_name = array(
			//カテゴリーID と 対応するコミュニティを連想配列に格納する
			&quot;1&quot; =&gt; &quot;@hoge&quot;, //カテゴリ ID が 1 のときは @hoge へreply
			&quot;2&quot; =&gt; &quot;@fuga&quot; //カテゴリ ID が 2 のときは @fuga へreply
			);
		//カテゴリIDを取得・属するカテゴリの数だけループする
		foreach (get_the_category() as $cat) {
			//該当するカテゴリ ID が存在した場合 $twicco に指定文字列(reply 先)を追加する
			$twicco = $twicco.$twicco_name[$cat-&gt;cat_ID].&quot; &quot;;
		}

		$message = twitpress_get_message( $postID );
		//送信メッセージに reply 先を追加する。
		$message = $twicco.$message;
		twitpress_postMessage( get_option( 'twitpress_uid' ), get_option( 'twitpress_password' ), $message );
	}
}
</pre>
<p><code>$twicco_name = array()</code> 内に、直接カテゴリ ID とリプライ先の対応を書いてやるというなんとも力業ですが、使えればいいやという気持ちですね。</p>
<p>とりあえず、動くは動いてますが、カテゴリ ID の確認方法が、カテゴリ管理メニューで表示される、各カテゴリの編集用リンクを見るという、これまた力業なのですが、我慢我慢。</p>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2012/01/08/2514/' rel='bookmark' title='FeedBurner 提供の RSS が Quick Cache の影響で更新遅れていた罠'>FeedBurner 提供の RSS が Quick Cache の影響で更新遅れていた罠</a></li>
<li><a href='http://www.u-1.net/2008/10/28/1546/' rel='bookmark' title='Twitpress 日本語版'>Twitpress 日本語版</a></li>
<li><a href='http://www.u-1.net/2008/10/26/1538/' rel='bookmark' title='Twitpress の通知 URL にパーマリンクをちゃんと使いたい'>Twitpress の通知 URL にパーマリンクをちゃんと使いたい</a></li>
<li><a href='http://www.u-1.net/2008/07/03/1267/' rel='bookmark' title='Twitpress を改造して Wassrpress (仮)にする'>Twitpress を改造して Wassrpress (仮)にする</a></li>
<li><a href='http://www.u-1.net/2008/01/09/1055/' rel='bookmark' title='DMSGuestbook の日本語対応'>DMSGuestbook の日本語対応</a></li>
<li><a href='http://www.u-1.net/2008/01/08/1052/' rel='bookmark' title='MyCategoryOrder の 子カテゴリの並び替えが反映されない現象に対処'>MyCategoryOrder の 子カテゴリの並び替えが反映されない現象に対処</a></li>
<li><a href='http://www.u-1.net/2007/01/09/619/' rel='bookmark' title='投票プラグイン Democracy AJAX Poll を導入'>投票プラグイン Democracy AJAX Poll を導入</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2008/11/05/1559/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2008/11/05/1559/" />
	</item>
		<item>
		<title>Twitpress 日本語版</title>
		<link>http://www.u-1.net/2008/10/28/1546/</link>
		<comments>http://www.u-1.net/2008/10/28/1546/#comments</comments>
		<pubDate>Tue, 28 Oct 2008 09:39:57 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[L10N]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1546</guid>
		<description><![CDATA[WordPress の更新を Twitter へ通知する プラグイン Twitpress 0.3.2 の日本語版です。 設定画面で出力されるメッセージを日本語化し、以下のカスタマイズを行っています。 ページの更新を通知し... [<a href="http://www.u-1.net/2008/10/28/1546/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p>WordPress の更新を Twitter へ通知する プラグイン <a href="http://wordpress.org/extend/plugins/twitpress/">Twitpress</a> 0.3.2 の日本語版です。</p>
<p>設定画面で出力されるメッセージを日本語化し、以下のカスタマイズを行っています。</p>
<ul>
<li>ページの更新を通知しない(ソース書き換えでオリジナルの動作に戻せます)</li>
<li>パーマリンクが正しく送信されない不具合への対応(<a href="http://www.u-1.net/2008/10/26/1538/">詳細</a>)</li>
</ul>
<p>ダウンロードして展開してできた twitpress.php をプラグインディレクトリに設置し、有効化してください。</p>
<p>WordPress 2.6.3 + <a href="http://codex.wordpress.org/ja:resource">日本語リソース</a> 環境下で動作確認を行っています。</p>
<ul class="download-this">
<li><a class="downloadlink" href="http://www.u-1.net/downloads/twitpress-0.3.2-ja.zip" title="バージョン0.3.2 ダウンロード 413 回" >Twitpress 0.3.2 日本語版 (413)</a><br /><span class="update">Update:2008/10/28</span></li>
</ul>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2009/06/19/1812/' rel='bookmark' title='WP-Table Reloaded 日本語リソース'>WP-Table Reloaded 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/11/05/1559/' rel='bookmark' title='Twitpress を twicco に力業で対応させてみる'>Twitpress を twicco に力業で対応させてみる</a></li>
<li><a href='http://www.u-1.net/2008/10/26/1538/' rel='bookmark' title='Twitpress の通知 URL にパーマリンクをちゃんと使いたい'>Twitpress の通知 URL にパーマリンクをちゃんと使いたい</a></li>
<li><a href='http://www.u-1.net/2008/07/03/1267/' rel='bookmark' title='Twitpress を改造して Wassrpress (仮)にする'>Twitpress を改造して Wassrpress (仮)にする</a></li>
<li><a href='http://www.u-1.net/2008/01/17/1070/' rel='bookmark' title='WP-PostRatings 日本語リソース'>WP-PostRatings 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/10/1058/' rel='bookmark' title='Post templates 日本語リソース(旧版)'>Post templates 日本語リソース(旧版)</a></li>
<li><a href='http://www.u-1.net/2008/01/09/1057/' rel='bookmark' title='WP-AddQuicktag 日本語リソース同梱版(旧版)'>WP-AddQuicktag 日本語リソース同梱版(旧版)</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2008/10/28/1546/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2008/10/28/1546/" />
	</item>
		<item>
		<title>Twitpress の通知 URL にパーマリンクをちゃんと使いたい</title>
		<link>http://www.u-1.net/2008/10/26/1538/</link>
		<comments>http://www.u-1.net/2008/10/26/1538/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 01:17:09 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[patch]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1538</guid>
		<description><![CDATA[WordPress 2.3 でカノニカル URL が導入されたのが原因か判断付かないのですが、Twitpress の Message format を、 更新したよ! : [title] [permalink]*Twit... [<a href="http://www.u-1.net/2008/10/26/1538/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p>WordPress 2.3 でカノニカル URL が導入されたのが原因か判断付かないのですが、<a href="http://wordpress.org/extend/plugins/twitpress/">Twitpress</a> の <code>Message format</code> を、</p>
<blockquote><p>更新したよ! : [title] [permalink]*Twitpress*</p></blockquote>
<p>のようにしても、パーマリンクが通知されない状況が続いていました。別に、ちゃんとリダイレクトされるので問題ないなあと思ってたんですが、Twitter でそれに困ってるつぶやきを見かけたので、ソースを追ってみました。で、多分これで解決。</p>
<pre class="brush: plain; title: ; notranslate">
$ diff -u twitpress.php.org twitpress.php
--- twitpress.php.org   2008-10-26 10:29:45.000000000 +0900
+++ twitpress.php       2008-10-26 10:13:21.000000000 +0900
@@ -246,7 +246,8 @@
        $proto = get_option( 'twitpress_message' );
        $post = get_post( $postID );
        $proto = str_replace( &quot;[title]&quot;, $post-&gt;post_title, $proto );
-       $proto = str_replace( &quot;[permalink]&quot;, $post-&gt;guid, $proto );
+       //$proto = str_replace( &quot;[permalink]&quot;, $post-&gt;guid, $proto );
+       $proto = str_replace( &quot;[permalink]&quot;, get_permalink($postID), $proto );
        $proto = str_replace( &quot;[link]&quot;, get_option( 'home' ).&quot;?p=&quot;.$postID, $proto );
        return $proto;
 }
</pre>
<p><code>[permalink]</code> で置換されるURLはデータベース内の <code>wp_posts</code> テーブルの <code>guid</code> フィールドを参照しているのですが、これは更新したときもパーマリンクが格納されるのじゃなくて、カノニカルURL 用のパラメータが格納されている雰囲気。なので、その値を使わずに、<a href="http://codex.wordpress.org/Template_Tags/get_permalink">get_permalink</a>を使い、パラメータに <code>$postID</code> を指定することで、投稿記事のパーマリンクを取得、投稿するようにしています。</p>
<p>まぁ、この記事がテスト投稿なんですが、ちゃんと通知されてますでしょうか?</p>
<h3>ページを更新したときは通知したくない</h3>
<p>twitpress.php の関数 <code>twitpress_run</code> を書き換えて、<code>$post_type</code> が <code>post</code> の時のみ通知を行うように変更してみました。</p>
<pre class="brush: plain; title: ; notranslate">
//Runs when a post record is inserted into the database
function twitpress_run( $postID ) {
	//get the post
	$post = get_post( $postID );

	//get the post type(page or post)
	$post_type = get_post_type( $postID );

	//we only want to do anything if the post was not previously twittered
	if ( !twitpress_was_twittered( $postID ) &amp;&amp; ( $post_type === &quot;post&quot;) ){
		//Update the post to reflect it's current status
		twitpress_db_update_post( $postID, $post-&gt;post_status );
	}
	//process the posts, including twittering newly published posts
	if ( $post_type === &quot;post&quot; ){
		twitpress_process_posts();
	}
}
</pre>
<p>ページを作成したときにTwitterへポストされるのがイヤな場合は、このような書き換えで回避できそうです。</p>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2008/11/05/1559/' rel='bookmark' title='Twitpress を twicco に力業で対応させてみる'>Twitpress を twicco に力業で対応させてみる</a></li>
<li><a href='http://www.u-1.net/2008/10/28/1546/' rel='bookmark' title='Twitpress 日本語版'>Twitpress 日本語版</a></li>
<li><a href='http://www.u-1.net/2008/07/03/1267/' rel='bookmark' title='Twitpress を改造して Wassrpress (仮)にする'>Twitpress を改造して Wassrpress (仮)にする</a></li>
<li><a href='http://www.u-1.net/2008/01/11/1061/' rel='bookmark' title='Search Regex 日本語リソース'>Search Regex 日本語リソース</a></li>
<li><a href='http://www.u-1.net/2008/01/09/1055/' rel='bookmark' title='DMSGuestbook の日本語対応'>DMSGuestbook の日本語対応</a></li>
<li><a href='http://www.u-1.net/2008/01/08/1052/' rel='bookmark' title='MyCategoryOrder の 子カテゴリの並び替えが反映されない現象に対処'>MyCategoryOrder の 子カテゴリの並び替えが反映されない現象に対処</a></li>
<li><a href='http://www.u-1.net/2006/10/12/131/' rel='bookmark' title='Mobile Eye+ で携帯電話閲覧に対応する'>Mobile Eye+ で携帯電話閲覧に対応する</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2008/10/26/1538/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2008/10/26/1538/" />
	</item>
		<item>
		<title>WordPress の更新内容を mixi へ投稿するスクリプト RSS2mixi with MagpieRSS</title>
		<link>http://www.u-1.net/2008/10/03/1491/</link>
		<comments>http://www.u-1.net/2008/10/03/1491/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 12:39:15 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[mixi]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1491</guid>
		<description><![CDATA[ブログのエントリーをmixi日記に自動投稿する「RSS2mixi」 ::: creazy photograph で配布されているスクリプト RSS2mixi をちょっと改造して本文から画像データを抜き出せるようにしてみま... [<a href="http://www.u-1.net/2008/10/03/1491/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><a href="http://creazy.net/2008/08/rss2mixi_php.html">ブログのエントリーをmixi日記に自動投稿する「RSS2mixi」 ::: creazy photograph</a> で配布されているスクリプト RSS2mixi をちょっと改造して本文から画像データを抜き出せるようにしてみました。<br />
元スクリプトでは description を見ているためか、WordPress の吐く RSS では画像を使っていても、そこまでスクリプトが読んでくれないので<sup>*<a href="http://www.u-1.net/2008/10/03/1491/#footnote_0_1491" id="identifier_0_1491" class="footnote-link footnote-identifier-link" title="これは SimpleXML の制限ぽいですね。PHP での SimpleXML 処理 ">1</a></sup> どうにかこうにかしてみようとしたのが、<a href="http://magpierss.sourceforge.net/">MagpieRSS</a> を用いて RSS をパースするという方法。</p>
<p>他ライブラリを使うのでシンプルではなくなるのですが、もともと便利なスクリプトだし、どうせ自前のサーバで動かすので、ちょっと富豪的にしてみました。</p>
<p>元スクリプトは PHP5 の SimpleXML を使っていますが、その部分を MagpieRSS にお任せしているので、PHP4 でも動くかもしれませんね。</p>
<h3>MagpieRSS 導入方法</h3>
<p>MagpieRSS のファイル群は RSS2mixi と同じ場所に magpierss というディレクトリを作成して保存してあります。</p>
<p><code>rss_fetch.inc</code> を直接書き換え <code>MAGPIE_OUTPUT_ENCODING</code> の値を &#8216;UTF-8&#8242; にしてあります。</p>
<p>その他、環境に応じてキャッシュディレクトリなどの書き換えを行います。</p>
<h3>RSS2mixi の使い方</h3>
<p>設定はスクリプト自体を書き換え、フィードの URL や mixi へのログイン情報、ID などを記入します。</p>
<p><code>$posted_file</code> および <code>$img_tmp_file</code> で指定するファイルは、予め作成しておくのが良いようです。</p>
<p>設定が完了したら cron で定期的にスクリプトを実行すれば、新規に投稿されたエントリの内容を mixi に複製してくれるはずです。</p>
<h3>ソースコード</h3>
<pre class="brush: php; title: ; notranslate">
&lt;?php
/**
 * RSS2mixi with MagpieRSS
 *
 * RSS読み込んでmixi日記に自動投稿します。
 *
 * original script @author  yager &lt;yager[ at ]creazy.net&gt;
 * http://creazy.net/2008/08/rss2mixi_php.html
 *
 * custmized by yuuichi &lt;u1 [ at ] u-1.net&gt;
 */
mb_language(&quot;japanese&quot;);
mb_internal_encoding(&quot;UTF-8&quot;);

require_once 'Services/MixiAPI/Diary.php';
require_once 'Services/MixiAPI/Image.php';
require_once 'Services/MixiAPI/Factory.php';
require_once './magpierss/rss_fetch.inc';
error_reporting(E_ALL);

//------------------------------------------------------------
// Settings
//------------------------------------------------------------
/**
 * RSS設定
 */
$rss  = ''; //ブログのRSS

/**
 * mixi設定
 */
$user = ''; //ログインID
$pass = ''; //パスワード
$id   = ''; //mixi ID

/**
 * 送信済みエントリーをストアしておくためのデータファイル
 * @memo 別のファイル名で設置した場合はここを修正してください。
 *       書き込み権限を与えておく事を忘れずに。
 *       chmod 666 {データファイル名}
 */
$posted_file  = './rss2mixi.link.database.txt';
$img_tmp_file = './rss2mixi_tmp_file.jpg';

//------------------------------------------------------------
// Get data
//------------------------------------------------------------
// 登校済みのURLのデータファイルを読み込み
$posted_links = explode(&quot;\n&quot;,file_get_contents($posted_file));

// MagpieRSSによるRSSの展開
$root_ = fetch_rss($rss);
$title = $root_-&gt;channel['title'];
$items_ = array();
foreach ( $root_-&gt;items as $item ) {
    $items_[] = $item;
}

rsort($items_);

//------------------------------------------------------------
// Post mixi
//------------------------------------------------------------
foreach ( $items_ as $item ) {
  // すでにポスト済みの記事はスキップ
  if ( in_array($item['link'],$posted_links) ) continue;
  $title       = $item['title'];
  $title       = &quot;ブログを更新しました : &quot;.$title;
  $link        = $item['link'];
  $description = $item['description'];
  $fulltext    = $item['content']['encoded'];

    // 添付画像URL取得
    $matches = array();
    if ( preg_match('/&lt;img.*?src=[\'\&quot;](.*.jpg)[\'\&quot;].*?&gt;/i',$fulltext,$matches) ) {
        // JPEGのIMGタグがあったら添付画像として
        $photo_url = $matches[1];
        echo $photo_url . &quot;&lt;br /&gt;\n&quot;;
    }

    // 本文の成形
    $description =
		preg_replace( // 画像タグはカメラアイコン＋URL
			'/&lt;img.*?src=[\'\&quot;](.*?)[\'\&quot;].*?&gt;/ie'
			,&quot;'（[m:133]$1）'&quot;
			,$description
		);
    $description =
		preg_replace( // リンクタグはPCアイコン＋TinyURL
			'/&lt;a.*?href=[\'\&quot;](.*?)[\'\&quot;].*?&gt;(.*?)&lt;\/a&gt;/ie'
			,&quot;'（[m:196]$2：'.tinyurl('$1').'）'&quot;
			,$description
		);
    $description = strip_tags($description);
    $description = $description.&quot;\n\n&quot;.$link;

    // debug
    echo $title . &quot;&lt;br /&gt;\n&quot;;
    echo $link . &quot;&lt;br /&gt;\n&quot;;
    echo &quot;&lt;pre&gt;&quot;.$description.&quot;&lt;/pre&gt;&lt;hr /&gt;\n&quot;;

    // mixiにポスト
    $diary   = new Services_MixiAPI_Diary($title, $description);
    if ( $photo_url ) {
        if ( $fp = fopen($img_tmp_file,&quot;w&quot;) ) {
            fwrite($fp,file_get_contents($photo_url));
            fclose($fp);
        }
        $diary-&gt;setImage(new Services_MixiAPI_Image($img_tmp_file));
    }
    $service = Services_MixiAPI_Factory::getInstance(
                   Services_MixiAPI_Factory::API_MODE_POSTDIARY,
                   $user, $pass, $id);
    $service-&gt;setDiary($diary);
    $service-&gt;execute();

    // ポスト済みに登録
    if ( $fp = fopen($posted_file,&quot;a&quot;) ) {
        fwrite($fp,$item['link'].&quot;\n&quot;);
        fclose($fp);
    }

}

/**
 * TinyURL変換関数
 * @param  String $url 変換したいURL
 * @return String 変換後のTinyURL
 */
function tinyurl($url) {
    $tiny = file_get_contents('http://tinyurl.com/api-create.php?url='.urlencode($url));
    return $tiny;
}
?&gt;
</pre>
<h3>参考リンク</h3>
<p>以下のURLを参考にスクリプトを改造させていただきました。感謝。</p>
<ul>
<li><a href="http://creazy.net/2008/08/rss2mixi_php.html">ブログのエントリーをmixi日記に自動投稿する「RSS2mixi」 ::: creazy photograph</a></li>
<li><a href="http://www.hyuki.com/yukiwiki/wiki.cgi?MagpieRSS">MagpieRSS &#8211; PHP で使える RSS パーサー。</a></li>
<li><a href="http://lab.kamawada.com/techmemo/index.cgi?page=MagpieRSS%A4%F2%BB%C8%A4%C3%A4%C6PHP%A4%C7%B4%CA%C3%B1RSS%A5%D1%A1%BC%A5%B9">MagpieRSSを使ってPHPで簡単RSSパース &#8211; TechMemo</a></li>
</ul>
<ol class="footnotes"><li id="footnote_0_1491" class="footnote">これは SimpleXML の制限ぽいですね。<a href="https://www.ibm.com/developerworks/jp/xml/library/x-simplexml.html#d">PHP での SimpleXML 処理</a> </li></ol><p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2008/03/31/1147/' rel='bookmark' title='WordPress には最適かもしれない拍手ツール 【GJ!】'>WordPress には最適かもしれない拍手ツール 【GJ!】</a></li>
<li><a href='http://www.u-1.net/2007/05/16/800/' rel='bookmark' title='WordPress 2.2 リリース'>WordPress 2.2 リリース</a></li>
<li><a href='http://www.u-1.net/2007/03/03/741/' rel='bookmark' title='WordPress 2.1.1 は危険らしいですぞ?'>WordPress 2.1.1 は危険らしいですぞ?</a></li>
<li><a href='http://www.u-1.net/2007/01/27/695/' rel='bookmark' title='WordPress 2.1 へのデータ移行のテスト'>WordPress 2.1 へのデータ移行のテスト</a></li>
<li><a href='http://www.u-1.net/2007/01/16/643/' rel='bookmark' title='WordPress ME 2.0.7 リリース'>WordPress ME 2.0.7 リリース</a></li>
<li><a href='http://www.u-1.net/2007/01/06/583/' rel='bookmark' title='WordPress 2.0.6 がリリース'>WordPress 2.0.6 がリリース</a></li>
<li><a href='http://www.u-1.net/2006/10/29/390/' rel='bookmark' title='WordPress ME 2.0.5 リリース'>WordPress ME 2.0.5 リリース</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2008/10/03/1491/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2008/10/03/1491/" />
	</item>
		<item>
		<title>WPtouch で iPhone/iPod touch 用の画面に変換する</title>
		<link>http://www.u-1.net/2008/08/24/1333/</link>
		<comments>http://www.u-1.net/2008/08/24/1333/#comments</comments>
		<pubDate>Sun, 24 Aug 2008 03:41:20 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPod touch]]></category>
		<category><![CDATA[Plugin]]></category>

		<guid isPermaLink="false">http://www.u-1.net/2008/08/24/1333/</guid>
		<description><![CDATA[関連記事 : Twitpress を twicco に力業で対応させてみる Twitpress の通知 URL にパーマリンクをちゃんと使いたい Search Regex 日本語リソース iPod touch 今なら余裕... [<a href="http://www.u-1.net/2008/08/24/1333/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[関連記事 : Twitpress を twicco に力業で対応させてみる Twitpress の通知 URL にパーマリンクをちゃんと使いたい Search Regex 日本語リソース iPod touch 今なら余裕... [<a href="http://www.u-1.net/2008/08/24/1333/"><span class="read-the-rest">Read more</span></a>]]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2008/08/24/1333/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2008/08/24/1333/" />
	</item>
		<item>
		<title>sim2ruby.css を使ってルビの表示を改善する</title>
		<link>http://www.u-1.net/2008/08/21/1330/</link>
		<comments>http://www.u-1.net/2008/08/21/1330/#comments</comments>
		<pubDate>Thu, 21 Aug 2008 04:03:54 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1330</guid>
		<description><![CDATA[Inteternet Explorer 以外のブラウザではルビの表示がなかなか上手くいかないのは、HTML でがりごり書いたことのあるひとなら結構な割合で知っているのではないかと思います。 私もルビを使う――使いたいケー... [<a href="http://www.u-1.net/2008/08/21/1330/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p>Inteternet Explorer 以外のブラウザではルビの表示がなかなか上手くいかないのは、HTML でがりごり書いたことのあるひとなら結構な割合で知っているのではないかと思います。</p>
<p>私もルビを使う――使いたいケースがたまにあったりで、そのたびにいろいろ検索して試行錯誤していたんですが、以下はそんな記録。</p>
<h3>CSS で頑張ってみる その1</h3>
<p>まずは正攻法(?) の CSS によるマルチプラットフォーム対応の方法。</p>
<p>結構前に、<a href="http://blog.livedoor.jp/dankogai/archives/50514780.html">404 Blog Not Found:css &#8211; ルビもCSSで</a> の記事で示された CSS を試してみました。こちらの記事の元ネタは<a href="http://www.akatsukinishisu.net/itazuragaki/css/use_ruby_style_as_user_stylesheet.html">ルビ表示はユーザスタイルシートで! &#8211; 徒書</a> からのようです。</p>
<p>で、これはこれで複雑怪奇な CSS を使っていなければ、表示結果はそれなりになるのですが、WordPress に移ってからは表示が崩れたりして使ってませんでした。</p>
<p>CSS でいろいろ頑張ってみた比較は <a href="http://tsukamotch.hamazo.tv/e1320649.html">ホームページ作成浜松Tips:CSSによるルビ（振り仮名）表示方法</a> で見ることができますが、Firefox3 だとなかなか満足のいく結果が出ていないように思えて残念無念です。</p>
<h3>Firefox のアドオンで自分だけ幸せになる</h3>
<p>Firefox を使っているのなら、<a href="https://addons.mozilla.org/ja/firefox/addon/1935">XHTMLルビサポート (XHTML Ruby Support)</a> を使えば概ね良好な動作をしてくれますね。</p>
<p>閲覧環境を整えるということなら、こちらのアドオンを導入すればルビの表示についてはほぼ解決ではないでしょうか。</p>
<h3>CSS で頑張ってみる その2</h3>
<p>で、本題。今日、また思い立って検索してみたら、<a href="http://d.hatena.ne.jp/mukaken/20080718/1216359581">CSSでルビを表示する &#8211; mukakenの日記</a> 経由で <a href="http://roheisen.net/progress.html#sim2rubycss">sim2ruby.css</a> という CSS ファイルを知りました。</p>
<p>結構小さい割に、IE 以外の最近のブラウザでもルビの表示が良い感じになるようです。</p>
<p>ウチのサイトにも追加で sim2ruby.css を読み込むようにしてみましたが、Firefox3 でも</p>
<p><img src="http://www.u-1.net/wp-content/uploads/2008/08/sim2rubycss-sample.png" width="500" height="225" alt="sim2ruby.css 導入サンプル画像" title="sim2ruby.css 導入サンプル画像" class="" /></p>
<p>のような感じで、かなり自然に見ることができるようになりました<sup>*<a href="http://www.u-1.net/2008/08/21/1330/#footnote_0_1330" id="identifier_0_1330" class="footnote-link footnote-identifier-link" title="ルビの部分にマウスカーソルを重ねると、文字を拡大する機能も付いています。〈ただそこに佇立する者〉の部分ですね。">1</a></sup>。</p>
<p>導入自体も、追加で CSS ファイルを読み込むようにするだけなので簡単。ブラウザに応じて JavaScript で CSS の振り分けをするとか、面倒な手順を踏まなくても、ルビ表示ができるようになるこの CSS ファイル、かなり便利ではないかと。</p>
<ol class="footnotes"><li id="footnote_0_1330" class="footnote">ルビの部分にマウスカーソルを重ねると、文字を拡大する機能も付いています。〈ただそこに佇立する者〉の部分ですね。</li></ol><p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2010/09/07/2312/' rel='bookmark' title='さくらのVPSへ一部コンテンツを引っ越しました'>さくらのVPSへ一部コンテンツを引っ越しました</a></li>
<li><a href='http://www.u-1.net/2009/06/25/1830/' rel='bookmark' title='WordPress 2.8.1 beta 1 でプラグイン管理でアクセス権に関するエラーが発生'>WordPress 2.8.1 beta 1 でプラグイン管理でアクセス権に関するエラーが発生</a></li>
<li><a href='http://www.u-1.net/2008/11/05/1559/' rel='bookmark' title='Twitpress を twicco に力業で対応させてみる'>Twitpress を twicco に力業で対応させてみる</a></li>
<li><a href='http://www.u-1.net/2008/10/26/1538/' rel='bookmark' title='Twitpress の通知 URL にパーマリンクをちゃんと使いたい'>Twitpress の通知 URL にパーマリンクをちゃんと使いたい</a></li>
<li><a href='http://www.u-1.net/2007/01/27/695/' rel='bookmark' title='WordPress 2.1 へのデータ移行のテスト'>WordPress 2.1 へのデータ移行のテスト</a></li>
<li><a href='http://www.u-1.net/2006/12/20/535/' rel='bookmark' title='Snap Preview Anywhereを組み込んでみる(2)'>Snap Preview Anywhereを組み込んでみる(2)</a></li>
<li><a href='http://www.u-1.net/2006/12/16/529/' rel='bookmark' title='テーマを変更'>テーマを変更</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2008/08/21/1330/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2008/08/21/1330/" />
	</item>
		<item>
		<title>Amazon 画像のリンク切れをJavaScript でごまかしてみる</title>
		<link>http://www.u-1.net/2008/08/07/1309/</link>
		<comments>http://www.u-1.net/2008/08/07/1309/#comments</comments>
		<pubDate>Thu, 07 Aug 2008 06:06:07 +0000</pubDate>
		<dc:creator>ゆーいち</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://www.u-1.net/?p=1309</guid>
		<description><![CDATA[読書感想カテゴリでは、サイドバー最上段に書影をランダムで10個表示するようにしていたのですが、ところどころ画像が表示されていないということに気付いていつつも放置していました。が、なんだか日が経つにつれてリンク切れ画像が増... [<a href="http://www.u-1.net/2008/08/07/1309/"><span class="read-the-rest">Read more</span></a>]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.u-1.net/images/noimage_small.png" alt="リンク切れ用代替画像" style="float:left;margin-right:10px;"/> <a href="http://www.u-1.net/category/lightnovel/bookreview/">読書感想カテゴリ</a>では、サイドバー最上段に書影をランダムで10個表示するようにしていたのですが、ところどころ画像が表示されていないということに気付いていつつも放置していました。が、なんだか日が経つにつれてリンク切れ画像が増えていってるような気がして仕方なかったので、とりあえず対処療法を講じてみました。</p>
<p>そもそも、<a href="http://www.google.co.jp/search?hl=ja&amp;client=firefox-a&amp;rls=org.mozilla%3Aja%3Aofficial&amp;hs=Qod&amp;q=Amazon+%E3%83%AA%E3%83%B3%E3%82%AF%E5%88%87%E3%82%8C+%E7%94%BB%E5%83%8F&amp;btnG=%E6%A4%9C%E7%B4%A2&amp;lr=lang_ja">Amazon リンク切れ 画像</a>で検索すると、同様なことに悩んでいる方は少なからずいるようで、そして、結局はひとつひとつ手作業で修正するしかなさそうという事実に愕然としてしまいます。</p>
<p>しかし、何とかす方法はやっぱりあるようで、画像がリンク切れの時は、代替画像を表示するという方法を<a href="http://allabout.co.jp/internet/javascript/closeup/CU20030303/index.htm#1">指定した画像がなければ別のサーバーの画像を読み込む</a>にて知りました。</p>
<p>ってことで、早速テーマを書き換え。WordPress の<a href="http://justinsomnia.org/2005/09/random-image-plugin-for-wordpress/">Random Image</a>プラグインの出力を書き換えて、</p>
<pre class="brush: php; title: ; notranslate">&lt;?php randomimage(false,
                  10,
                  &quot;height='120' width='90' class='random-image' onerror=\&quot;this.src='http://www.u-1.net/images/noimage_small.png'\&quot;&quot;,
                  true,
                  &quot;(\.jpg|\.jpeg|\.png)&quot;,
                  &quot;both&quot;,
                  &quot;&quot;,
                  &quot;9&quot;,
                  true,
                  &quot;&quot;,
                  &quot;%2&quot;); ?&gt;
</pre>
<p>のように変更。プラグインの細かいパラメータは配布サイトの説明参照してもらうとして、img タグ内にイベントハンドラ onerror を追加してやって、画像読み込みにエラーが出た場合は、代替イメージ noimage_small.png を表示してやるということですね。</p>
<p>同様に、各エントリの中の書影を表示している img タグにも一括置換で onerror を追加してやって対応完了。</p>
<p>そのうちこつこつと画像の UR Lは書き換えないといけないけれど、ひとまずはこれで不格好なレイアウト崩れは回避できるはず。</p>
<p>関連記事 : <ol>
<li><a href='http://www.u-1.net/2010/09/07/2312/' rel='bookmark' title='さくらのVPSへ一部コンテンツを引っ越しました'>さくらのVPSへ一部コンテンツを引っ越しました</a></li>
<li><a href='http://www.u-1.net/2009/06/25/1830/' rel='bookmark' title='WordPress 2.8.1 beta 1 でプラグイン管理でアクセス権に関するエラーが発生'>WordPress 2.8.1 beta 1 でプラグイン管理でアクセス権に関するエラーが発生</a></li>
<li><a href='http://www.u-1.net/2008/11/05/1559/' rel='bookmark' title='Twitpress を twicco に力業で対応させてみる'>Twitpress を twicco に力業で対応させてみる</a></li>
<li><a href='http://www.u-1.net/2007/01/27/695/' rel='bookmark' title='WordPress 2.1 へのデータ移行のテスト'>WordPress 2.1 へのデータ移行のテスト</a></li>
<li><a href='http://www.u-1.net/2007/01/12/630/' rel='bookmark' title='Net::Amazon のバージョンを上げてみた'>Net::Amazon のバージョンを上げてみた</a></li>
<li><a href='http://www.u-1.net/2006/12/20/535/' rel='bookmark' title='Snap Preview Anywhereを組み込んでみる(2)'>Snap Preview Anywhereを組み込んでみる(2)</a></li>
<li><a href='http://www.u-1.net/2006/12/16/529/' rel='bookmark' title='テーマを変更'>テーマを変更</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.u-1.net/2008/08/07/1309/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.u-1.net/2008/08/07/1309/" />
	</item>
	</channel>
</rss>

