カテゴリーページやタグページのアドレスに日本語 (ダブルバイト文字) のスラッグを入れると、Not Found が表示されてしまうことがあります。
原因は、スラッグは URL エンコードされた時、アルファベットが小文字に変換されるため、大文字のアルファベットを使ったリンクは表示されません。
そこで、WordPress 本体の class-wp.php の次の部分を大文字/小文字を区別しないように、i オプションを追加します。
if ( preg_match("#^$match#i", $request_match, $matches) || preg_match("#^$match#i", urldecode($request_match), $matches) ) {
if ( $wp_rewrite->use_verbose_page_rules && preg_match( '/pagename=\$matches\[([0-9]+)\]/i', $query, $varmatch ) ) {
WordPress 本体のバージョンアップの度に変更する必要があるので、スラッグにはダブルバイト文字 (日本語) を使わない方が無難です。
1件のコメント