この記事は最後に更新してから1年以上経過しています。

「姓」の後に「名」を

説明

WordPressのユーザー情報設定ページでは、「名(First name)」の後に「姓(Last name)」を入力するようになっている。日本向けのユーザー登録できるサイトの場合、この並び順はちょっと違和感があるので、「姓」「名」の順に入力できるようにした。

WordPressの管理画面では、table要素によってフォームの各項目を表現しているので、今回のように「名」と「姓」の並びを変更する場合はそれらのtr要素を入れ替えればいい。具体的には、テーマのfunctions.phpに次のコードを追加し、admin_print_footer_scriptsアクションを利用して、「名」と「姓」のあるtr要素を入れ替えた。

add_action( 'admin_print_footer_scripts', 'first_name_after_last_name' );
function first_name_after_last_name() {
?>
<script type="text/javascript">
/* <![CDATA[ */
( function($) {
	$( '#last_name' ).each( function () {
		tr_last_name = $(this).parents( 'tr' );
		tr_first_name = tr_last_name.prev( 'tr' );
		if ( tr_first_name.find( '#first_name' ).length == 1 )
			tr_last_name.after( tr_first_name );
	} );
} )( jQuery );
/* ]]> */
</script>
<?php
}

管理画面の操作できるアクションはいくつか用意されている。今回使用したadmin_print_footer_scriptsアクションは2.8.0で追加されたアクションである。それ以前のバージョンなら、admin_footerアクション(1.2.0以降)が利用できる。


最終更新 : 2013年11月06日 18:44

お勧め

get_bookmark_field(2011年6月11日 更新)

mixed get_bookmark_field( string $field, int $bookmark [ , string $context = 'display' ] )
リンク情報の要素値を取得する。

remove_filter(2022年11月8日 更新)

bool remove_filter( $tag, mixed $function_to_remove [ , int $priority = 10 [ , int $accepted_args = 1 ] ] )
WordPressタグに登録されているフィルターを削除する。

get_user_locale(2023年3月30日 更新)

string get_user_locale( [ mixed $user_id = 0 ] )
ユーザの言語を取得する。

add_plugins_page(2022年6月27日 更新)

mixed add_plugins_page( string $page_title, string $menu_title, mixed string $capability, string $menu_slug [ , mixed $function = '' [, int $position = null ] ] )
プラグインメニューにサブメニューを登録する。

wp_list_bookmarks(2018年5月27日 更新)

string wp_list_bookmarks( [ mixed $args = '' ] )
ブックマーク(管理画面の「リンク」)をパラメータ$argsのecho値が1ならば表示する。echo値が0ならばその文字列を取得する。