WordPressの姓名が逆
WordPressは英語ベースのため日本語対応が不十分な部分がある。
特に顕著なのがユーザーのプロフィールの姓名が逆になっている点だ。
知らない人はいないと思うが、欧米では姓名が日本とは逆になっている。
WordPressで日本語表示にしても入力順序が「姓 => 名」ではなく「名 => 姓」となっているため、日本人だと違和感を覚える。
ユーザー一覧の部分も姓名が逆になってしまうので日本語で入力する場合は非常に不自然である。
姓名が逆なのを修正する方法
姓名が逆なのを修正するには表示箇所のPHPを修正するか、JavaScriptでユーザーの姓名の入力欄を逆にするかのどちらかで対応する必要がある。
JavaScriptで修正する場合はPHPでの修正に比べて簡単なのでオススメだ。
やり方はthemesのフォルダ内にあるfunctions.phpファイルに以下のコードを貼り付けるだけで実装できる。
// ユーザーの姓名の順序を逆にする
function user_name_revert() {
?>
<script async>
(function($) {
var last_name = $('#last_name');
var first_name = $('#first_name');
var last_name_tr = last_name.parents('tr');
var first_name_tr = last_name_tr.prev('tr');
var last_name_input = last_name.parent('td').html();
var first_name_input = first_name.parent('td').html();
last_name_tr.after(first_name_tr);
last_name.parent('td').html(first_name_input);
first_name.parent('td').html(last_name_input);
})(jQuery);
</script>
<?php
}
add_action('admin_print_footer_scripts', 'user_name_revert');
上記コードを貼り付け後にユーザーの入力欄を確認すると「名 => 姓」が「姓 => 名」になっていることが確認できる。
※ データベース上の姓名は逆になっていないが、日本語なら問題にならない。