この記事は最後に更新してから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

お勧め

add_rewrite_rule(2018年5月27日 更新)

void add_rewrite_rule( string $regex, string $redirect [ , string $after = 'bottom' ] )
リライトルールを追加する(リライトルール追加用のデータを登録する)。

post_type_supports(2018年5月27日 更新)

bool post_type_supports( string $post_type, string $feature )
投稿タイプが特徴(≒編集要素)を有しているか調べる。

sanitize_textarea_field(2018年5月27日 更新)

string sanitize_textarea_field( string $str )
TEXTAREA要素に入力された文字列またはデータベースに格納された複数行文字列をサニタイズする。

get_all_category_ids(2014年9月5日 更新)

array get_all_category_ids( )
すべてのカテゴリIDを取得する。

esc_xml(2020年8月17日 更新)

string esc_xml( string $text )
XML要素向けにエスケープする。