WordPressの日本語スラッグ対応

SEOに効果があるのか気になっていたので実験、メモ書き。
パーマリンク設定を「カスタム構造”/%category%/%post_id%”」 にしてOK!
と思ったら、クロールエラー出まくりヽ(´Д`;)ノアゥ…

という訳で、以下参考にしてfunctions.phpを修正。

WordPress での日本語スラッグについて

functions.phpに以下追加
function percent_encode_capital_letter($uri) {
$uri = preg_replace_callback('/(%[0-9a-f]{2}?)+/', create_function('$matches','return strtoupper($matches[0]);'), $uri);
return $uri;
}

add_filter(‘post_link’, ‘percent_encode_capital_letter’);
add_filter(‘page_link’, ‘percent_encode_capital_letter’);
add_filter(‘tag_link’, ‘percent_encode_capital_letter’);
add_filter(‘category_link’, ‘percent_encode_capital_letter’);
add_filter(‘preview_post_link’, ‘percent_encode_capital_letter’);
add_filter(‘get_the_guid’, ‘percent_encode_capital_letter’);

で、今度こそ終わり!と思ったけど、固定ページがエラー吐いて404に…。
レスが付いてなくてアレだったけど以下試してみた。

WP 3.0.1 固定ページのパーマリンクで日本語が使えない

/wp-includes/class-wp.php 198行目付近
if ( preg_match("#^$match#i", $request_match, $matches) ||
preg_match("#^$match#i", urldecode($request_match), $matches) ) {

オプション”i”(大文字、小文字を区別しない)を追加して解決。
これいじっちゃうとアップデートの度に修正するようか?

苦労して日本語に対応させたは良いけど、
IEだとURLにエンコードされた文字が出て気持ち悪いかも(^^ゞ

Related Post

新規インストールしたiTunesにiPhoneのデータを移行する方法... 意外に情報が少なかった、iTunesの新規インストール後のiPhoneからのデータ移行のメモです。 iTunesで認識されたiPhoneを右クリック>購入した項目を転送とバックアップを行うだけです。とりあえず、これで同期した後にiPhone内がまっさら…なんて悲劇は避けられます。万が一、何かあった...
i-FunBoxによるiPhoneデータのサルベージ方法... 「iTunesのデータが飛んでしまい、せめてiPhone内の楽曲データだけでも復元したい」と、言った場合に便利なのがi-FunBoxです。 過去にNASのRAID崩壊、今度は突如、Dドライブが見れなくなる怪現象に見舞われ、iPhoneから楽曲データを取り出す羽目になった際のメモです(^^ゞ まず...
夏コミ(C92)3日目のレイヤーさん ククリ(魔法陣グルグル)@くろねこさん | PENTAX K-1&D FA★70-200mm&Cactus V6II&RF60 夏コミ(C92)3日目に撮影させて頂いたレイヤーさんをご紹介します。 扉絵は2日目にも撮影させて頂いたくろねこさん…ククリ可愛い(*´ω`*) 撮影はP...
夏コミ(C92)2日目のレイヤーさん 南ことり(ラブライブ!)@yui*さん | PENTAX K-1&D FA★70-200mm&Cactus V6II&RF60X 夏コミ(C92)2日目に撮影させて頂いたレイヤーさんをご紹介します。 今回は体調が良くなかったため、後半に備え1日目は自粛しました(´・ω・`) 扉絵はワ...