<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: WP: WordPress 2.3 タグ付け機能まとめ＆情報募集</title>
	<atom:link href="http://bono.s201.xrea.com/2007/09/522-wp23_tagging/feed/" rel="self" type="application/rss+xml" />
	<link>http://bono.s201.xrea.com/2007/09/522-wp23_tagging/</link>
	<description>薔薇の栽培記録・ベランダ園芸・沖縄・写真・自転車・総合リンク集。WP 2.6.1 調整中ですー。</description>
	<pubDate>Mon, 13 Oct 2008 07:58:53 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
		<item>
		<title>By: ぼの</title>
		<link>http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-36994</link>
		<dc:creator>ぼの</dc:creator>
		<pubDate>Fri, 05 Oct 2007 13:55:25 +0000</pubDate>
		<guid isPermaLink="false">http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-36994</guid>
		<description>naokiさんに教えていただいた
&lt;blockquote&gt;
そして、どうやらエントリーの投稿時にTAGを入力した場合、今までそのTAGを使用したかどうかをslugフィールドで見てるみたいなので（←これは推測です）、slugがterm_idで入力されている場合、（term_idは同じ値がないために）たとえ以前使用したTAGを入力したとしても同じ TAGと認識されないみたいです。
なので、同じ（日本語の）TAGを入力しても、同じ名前のTAGがいっぱいできちゃいます。
&lt;/blockquote&gt;
の部分、うちでも現象を確認しました。

・UTW からインポートしたタグ「アップグレード」の slug を「upgrade」に修正。
・新規投稿で「アップグレード」タグを付ける。（プラグインは使わず）

これで、新規に term（name:アップグレード、slug:URLエンコード）が作られて、過去の「アップグレード」タグ（upgrade）を付けた投稿と別タグ扱いになっています。

（新規投稿） http://bono.s201.xrea.com/tag/%e3%82%a2%e3%83%83%e3%83%97%e3%82%b0%e3%83%ac%e3%83%bc%e3%83%89/
（過去分） http://bono.s201.xrea.com/tag/upgrade/

WordPress（slug:wordpress） と wp2.3（wp23） は大丈夫でした。

後でソースを見てみますー。</description>
		<content:encoded><![CDATA[<p>naokiさんに教えていただいた</p>
<blockquote><p>
そして、どうやらエントリーの投稿時にTAGを入力した場合、今までそのTAGを使用したかどうかをslugフィールドで見てるみたいなので（←これは推測です）、slugがterm_idで入力されている場合、（term_idは同じ値がないために）たとえ以前使用したTAGを入力したとしても同じ TAGと認識されないみたいです。<br />
なので、同じ（日本語の）TAGを入力しても、同じ名前のTAGがいっぱいできちゃいます。
</p></blockquote>
<p>の部分、うちでも現象を確認しました。</p>
<p>・UTW からインポートしたタグ「アップグレード」の slug を「upgrade」に修正。<br />
・新規投稿で「アップグレード」タグを付ける。（プラグインは使わず）</p>
<p>これで、新規に term（name:アップグレード、slug:URLエンコード）が作られて、過去の「アップグレード」タグ（upgrade）を付けた投稿と別タグ扱いになっています。</p>
<p>（新規投稿） <a href="http://bono.s201.xrea.com/tag/%e3%82%a2%e3%83%83%e3%83%97%e3%82%b0%e3%83%ac%e3%83%bc%e3%83%89/" rel="nofollow">http://bono.s201.xrea.com/tag/%e3%82%a2%e3%83%83%e3%83%97%e3%82%b0%e3%83%ac%e3%83%bc%e3%83%89/</a><br />
（過去分） <a href="http://bono.s201.xrea.com/tag/upgrade/" rel="nofollow">http://bono.s201.xrea.com/tag/upgrade/</a></p>
<p>WordPress（slug:wordpress） と wp2.3（wp23） は大丈夫でした。</p>
<p>後でソースを見てみますー。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ぼの</title>
		<link>http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35957</link>
		<dc:creator>ぼの</dc:creator>
		<pubDate>Tue, 25 Sep 2007 17:03:20 +0000</pubDate>
		<guid isPermaLink="false">http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35957</guid>
		<description>naokiさん、こんにちはー。さらに調べてくださってありがとうございます。
私の RC1 でも、日本語タグを入力したときに、terms テーブルの slug フィールドにエンコード後文字列が格納されていることを確認しました。

「MT Style Post Name」プラグインのことは、akaさんが記事にしてくださっていました。

&lt;a href="http://plasticdreams.org/archives/2007/02/01/1639/no-post-slug-please/ " rel="nofollow" rel="nofollow"&gt;:: plasticdreams :: &#187; ポストスラッグ要らない っていう人向けのプラグイン&lt;/a&gt;

全部日本語だと ID が入るんですね。
sanitize_title は、そういえばタグを調べていたときにソースで見かけました～！（でも、どこで見かけたかは早くも忘れてしまったぼの。。orz）

MT Style Post Name プラグインユーザにとって大切な情報ですし、調べるきっかけにもなって、naokiさんの書き込みはやっぱりありがたかったですよー。なので、気にしないでくださいね。コアの動作をみたいときは、できるだけデフォルト状態にしておくといいですよね。(^-^)

どうもありがとうございました。 :-)
また情報とかレビューとかありましたら、教えてくださいー。</description>
		<content:encoded><![CDATA[<p>naokiさん、こんにちはー。さらに調べてくださってありがとうございます。<br />
私の RC1 でも、日本語タグを入力したときに、terms テーブルの slug フィールドにエンコード後文字列が格納されていることを確認しました。</p>
<p>「MT Style Post Name」プラグインのことは、akaさんが記事にしてくださっていました。</p>
<p><a href="http://plasticdreams.org/archives/2007/02/01/1639/no-post-slug-please/ " rel="nofollow" rel="nofollow">:: plasticdreams :: &raquo; ポストスラッグ要らない っていう人向けのプラグイン</a></p>
<p>全部日本語だと ID が入るんですね。<br />
sanitize_title は、そういえばタグを調べていたときにソースで見かけました～！（でも、どこで見かけたかは早くも忘れてしまったぼの。。orz）</p>
<p>MT Style Post Name プラグインユーザにとって大切な情報ですし、調べるきっかけにもなって、naokiさんの書き込みはやっぱりありがたかったですよー。なので、気にしないでくださいね。コアの動作をみたいときは、できるだけデフォルト状態にしておくといいですよね。(^-^)</p>
<p>どうもありがとうございました。 <img src='http://bono.s201.xrea.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
また情報とかレビューとかありましたら、教えてくださいー。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: naoki</title>
		<link>http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35867</link>
		<dc:creator>naoki</dc:creator>
		<pubDate>Mon, 24 Sep 2007 16:41:30 +0000</pubDate>
		<guid isPermaLink="false">http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35867</guid>
		<description>ぼのさん、こんばんは。
先のコメントで日本語が使えないと書いてしまいましたが間違っていました。
すみません。

bleuさんのところで日本語のTAGができていたので、もう少し調べてみましたらどうやら、「MT Style Post Name」というプラグインが原因だったようです。

MT Style Post Nameプラグインは、「タイトルから英数字、ダッシュ、アンダーバーのみ抜き取ってスラッグにする」もので、Hookにsanitize_titleが使われています。もしかしたらこのHookが原因だったかもしれません。
//コード
add_filter('sanitize_title', 'sanitize_title_numalpha_only', 9);
function sanitize_title_numalpha_only($title) {
return preg_replace('/[^%a-zA-Z0-9 _-]/', '', $title);
}

（ちなみにこのプラグインのコードは2chのWordpressスレッドで書かれたものです。）

もう少し調べてから書くべきでした。
ぼのさんならびに僕の書き込みを読んでくださった方申し訳ございませんでした。</description>
		<content:encoded><![CDATA[<p>ぼのさん、こんばんは。<br />
先のコメントで日本語が使えないと書いてしまいましたが間違っていました。<br />
すみません。</p>
<p>bleuさんのところで日本語のTAGができていたので、もう少し調べてみましたらどうやら、「MT Style Post Name」というプラグインが原因だったようです。</p>
<p>MT Style Post Nameプラグインは、「タイトルから英数字、ダッシュ、アンダーバーのみ抜き取ってスラッグにする」もので、Hookにsanitize_titleが使われています。もしかしたらこのHookが原因だったかもしれません。<br />
//コード<br />
add_filter(&#8217;sanitize_title&#8217;, &#8217;sanitize_title_numalpha_only&#8217;, 9);<br />
function sanitize_title_numalpha_only($title) {<br />
return preg_replace(&#8217;/[^%a-zA-Z0-9 _-]/&#8217;, &#8221;, $title);<br />
}</p>
<p>（ちなみにこのプラグインのコードは2chのWordpressスレッドで書かれたものです。）</p>
<p>もう少し調べてから書くべきでした。<br />
ぼのさんならびに僕の書き込みを読んでくださった方申し訳ございませんでした。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ぼの</title>
		<link>http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35756</link>
		<dc:creator>ぼの</dc:creator>
		<pubDate>Sun, 23 Sep 2007 18:40:20 +0000</pubDate>
		<guid isPermaLink="false">http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35756</guid>
		<description>&lt;em&gt;＞bleuさん&lt;/em&gt;

わざわざ調べてくださってありがとうございます。
知りたかったことがたくさん載っていて、ありがたかったですー！
実際の表示なども拝見しつつ、まとめページに載せさせていただきました。
あとで bleuさんの記事にコメントしに伺いますね。

またお気づきのこととかがありましたら、教えてください。 :-)


&lt;em&gt;＞naokiさん&lt;/em&gt;

はじめまして。こんにちはー。情報の書き込みありがとうございます。 :-)
日本語タグが使えるかは、個人的にも一番気になる部分なので、詳しく書いてくださってうれしかったです。スラッグは UTW にはなかったので、ちょぴっと期待しているところでもありました。

上でトラックバックをくださったbleuさんの「insomniaque」で、記事に付けたタグリストの URL がアルファベットの小文字やエンコード後の文字列になっていたので、スラッグが使われているのかなあと思っていました。
でも、slug フィールドに term_id が入るのでは、使えないですね。パーマリンク生成時にタグ名から変換してるのかな。。ううーむ。

いくつか確認したいことがでてきて RC1 をインストールしてみたので、私の方でも見てみますね。

＜解決策
手修正やプラグインでスラッグを更新することも考えられるので、
3. の存在チェックは、入力したタグ名と term 名（name）とを比較した方がいいかもしれませんね。それで、なければ terms に追加（2.のエンコードは 4.のときに）、みたいな感じで。。</description>
		<content:encoded><![CDATA[<p><em>＞bleuさん</em></p>
<p>わざわざ調べてくださってありがとうございます。<br />
知りたかったことがたくさん載っていて、ありがたかったですー！<br />
実際の表示なども拝見しつつ、まとめページに載せさせていただきました。<br />
あとで bleuさんの記事にコメントしに伺いますね。</p>
<p>またお気づきのこととかがありましたら、教えてください。 <img src='http://bono.s201.xrea.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><em>＞naokiさん</em></p>
<p>はじめまして。こんにちはー。情報の書き込みありがとうございます。 <img src='http://bono.s201.xrea.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
日本語タグが使えるかは、個人的にも一番気になる部分なので、詳しく書いてくださってうれしかったです。スラッグは UTW にはなかったので、ちょぴっと期待しているところでもありました。</p>
<p>上でトラックバックをくださったbleuさんの「insomniaque」で、記事に付けたタグリストの URL がアルファベットの小文字やエンコード後の文字列になっていたので、スラッグが使われているのかなあと思っていました。<br />
でも、slug フィールドに term_id が入るのでは、使えないですね。パーマリンク生成時にタグ名から変換してるのかな。。ううーむ。</p>
<p>いくつか確認したいことがでてきて RC1 をインストールしてみたので、私の方でも見てみますね。</p>
<p>＜解決策<br />
手修正やプラグインでスラッグを更新することも考えられるので、<br />
3. の存在チェックは、入力したタグ名と term 名（name）とを比較した方がいいかもしれませんね。それで、なければ terms に追加（2.のエンコードは 4.のときに）、みたいな感じで。。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: naoki</title>
		<link>http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35604</link>
		<dc:creator>naoki</dc:creator>
		<pubDate>Sat, 22 Sep 2007 07:49:15 +0000</pubDate>
		<guid isPermaLink="false">http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35604</guid>
		<description>はじめまして。naokiと申します。
プラグインの動作などでお世話になっております。
TAG情報を集めていると言うことで、2.3のTAGの情報を知っている限り書かせていただきますね。

今回書かせて頂く情報は
　　・WordPress2.3RC1で試した。
　　・僕はコアファイルまでは読めなかったため、
　　　実際にTAGを入力したのとMySQLのテーブルから見た情報。
//もし間違いなどがあればご指摘ください・・。


結論から書きますと、今回のTAGはそのままでは日本語は使えないようです。
TAGのスラッグの付け方がURLエンコードしてくれないので、そのため問題が生じるようです。英語なら少し試した程度ですが問題なくDBに入力されていました。


//以下はTAGとDBのテーブルの情報です。
2.3ではカテゴリーの情報が入っているDBのテーブルの構成が変わっているのですが、TAGの情報もそのカテゴリーが入っている「terms」、「term_relationships」、「term_taxonomy」のテーブルに入っています。
そして、今回日本語に関しての問題が生じるのは「terms」テーブルにTAGの情報をインサート（追加）した時のようです。

「terms」テーブル：
日本語に関しての問題は、日本語でTAGを入力した場合、slugフィールドのところがURLエンコードされないでterm_idがそのまま入ってしまいます。
そして、どうやらエントリーの投稿時にTAGを入力した場合、今までそのTAGを使用したかどうかをslugフィールドで見てるみたいなので（←これは推測です）、slugがterm_idで入力されている場合、（term_idは同じ値がないために）たとえ以前使用したTAGを入力したとしても同じTAGと認識されないみたいです。
なので、同じ（日本語の）TAGを入力しても、同じ名前のTAGがいっぱいできちゃいます。

あとTAGと関係ないですがslugフィールドの設定が「UNIQUE」（同じ文字は認められない）となっているため、今までそれぞれ違うカテゴリーに同じスラッグをつけている方は要注意です。



解決策？
TAGをDBに書き込むときのコアソースがどこにあるのかわからなかったので推測なのですが（すみません）、
日本語に関しては、TAGをDBに書き込むときURLエンコードなどができればいいかと思います。
1.TAG入力
2.日本語（マルチバイトを含む文字列）の場合、スラッグをURLエンコード
3.「terms」テーブルのslugフィールド内に無かったか調べる。
4.無ければTAGを新しく追加
という感じでできれば日本語でもできると思います。

TAGを入力時のHookがあれば、プラグインで対応できるんですが。もしなければコアファイルに直で書き込まなければならないのかな～。それはイヤだな・・。</description>
		<content:encoded><![CDATA[<p>はじめまして。naokiと申します。<br />
プラグインの動作などでお世話になっております。<br />
TAG情報を集めていると言うことで、2.3のTAGの情報を知っている限り書かせていただきますね。</p>
<p>今回書かせて頂く情報は<br />
　　・WordPress2.3RC1で試した。<br />
　　・僕はコアファイルまでは読めなかったため、<br />
　　　実際にTAGを入力したのとMySQLのテーブルから見た情報。<br />
//もし間違いなどがあればご指摘ください・・。</p>
<p>結論から書きますと、今回のTAGはそのままでは日本語は使えないようです。<br />
TAGのスラッグの付け方がURLエンコードしてくれないので、そのため問題が生じるようです。英語なら少し試した程度ですが問題なくDBに入力されていました。</p>
<p>//以下はTAGとDBのテーブルの情報です。<br />
2.3ではカテゴリーの情報が入っているDBのテーブルの構成が変わっているのですが、TAGの情報もそのカテゴリーが入っている「terms」、「term_relationships」、「term_taxonomy」のテーブルに入っています。<br />
そして、今回日本語に関しての問題が生じるのは「terms」テーブルにTAGの情報をインサート（追加）した時のようです。</p>
<p>「terms」テーブル：<br />
日本語に関しての問題は、日本語でTAGを入力した場合、slugフィールドのところがURLエンコードされないでterm_idがそのまま入ってしまいます。<br />
そして、どうやらエントリーの投稿時にTAGを入力した場合、今までそのTAGを使用したかどうかをslugフィールドで見てるみたいなので（←これは推測です）、slugがterm_idで入力されている場合、（term_idは同じ値がないために）たとえ以前使用したTAGを入力したとしても同じTAGと認識されないみたいです。<br />
なので、同じ（日本語の）TAGを入力しても、同じ名前のTAGがいっぱいできちゃいます。</p>
<p>あとTAGと関係ないですがslugフィールドの設定が「UNIQUE」（同じ文字は認められない）となっているため、今までそれぞれ違うカテゴリーに同じスラッグをつけている方は要注意です。</p>
<p>解決策？<br />
TAGをDBに書き込むときのコアソースがどこにあるのかわからなかったので推測なのですが（すみません）、<br />
日本語に関しては、TAGをDBに書き込むときURLエンコードなどができればいいかと思います。<br />
1.TAG入力<br />
2.日本語（マルチバイトを含む文字列）の場合、スラッグをURLエンコード<br />
3.「terms」テーブルのslugフィールド内に無かったか調べる。<br />
4.無ければTAGを新しく追加<br />
という感じでできれば日本語でもできると思います。</p>
<p>TAGを入力時のHookがあれば、プラグインで対応できるんですが。もしなければコアファイルに直で書き込まなければならないのかな～。それはイヤだな・・。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: insomniaque</title>
		<link>http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35500</link>
		<dc:creator>insomniaque</dc:creator>
		<pubDate>Fri, 21 Sep 2007 16:24:03 +0000</pubDate>
		<guid isPermaLink="false">http://bono.s201.xrea.com/2007/09/522-wp23_tagging/#comment-35500</guid>
		<description>&lt;strong&gt;WP 2.3 のタグ周り...&lt;/strong&gt;

ぼのさんがタグ付け機能 - ps*wikiにて WP 2.3 のタグ機能のまとめページを作成されています。情報募集中ということなので分かる限りで調べてみました。
ちなみ&lt;a href="http://bleu.raindrop.jp/2007/09/22/wp23-tagging/" rel="nofollow"&gt; (more...)&lt;/a&gt;</description>
		<content:encoded><![CDATA[<p><strong>WP 2.3 のタグ周り&#8230;</strong></p>
<p>ぼのさんがタグ付け機能 - ps*wikiにて WP 2.3 のタグ機能のまとめページを作成されています。情報募集中ということなので分かる限りで調べてみました。<br />
ちなみ<a href="http://bleu.raindrop.jp/2007/09/22/wp23-tagging/" rel="nofollow"> (more&#8230;)</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>
