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から楽曲データを取り出す羽目になった際のメモです(^^ゞ まず...
奥多摩湖の桜2018 奥多摩湖の夜桜 | PENTAX K-1&DA10-17mm 千鳥ヶ淵の次は、こちらも例年より2週間くらい?早く桜が満開を迎えた奥多摩湖へ。去年、星景を撮りに行った時からこの構図を狙っていました(^^) 撮影はPENTAX K-1&DA10-17mm、FA20mmです。 ...
千鳥ヶ淵の桜ライトアップ2018 千鳥ヶ淵の桜ライトアップ | PENTAX K-1&D FA★70-200mm 3月下旬に毎年恒例の千鳥ヶ淵の桜ライトアップに行って来ました。今年は予想より一週間ほど早い開花に振り回されてしまいましたね〜。 撮影は前年同様、PENTAX K-1&D FA★70-200mmです。今年は(...