Home
Extensions
Joomla! CMS
Extensions
Joomla! CMS 5月
16
2008
日本語でユーザー名を9文字以上にすると:Joomla!1.0.x
「日本語で9文字以上のユーザー名でユーザー登録すると文字化けする。」と問い合わせがあったので少しHackしてみました。
これは、Joomla!1.0.xの場合です。
これには2つの原因があります。データベースの文字数制限と、ユーザー登録時の文字数制限です。
まず、phpMyAdminでデータベースを開きます。
- jos_usersのテーブルを開き、テーブルの構造を表示させます。
- フィールド欄のusename行の操作欄に鉛筆マークの様な画像(変更)が見えますのでそれをクリックします。
- 長さ/値の値を25から51(今回、ここでは倍の文字数にしました。51にすることで17文字のユーザー名が登録できます。)に変更して保存します。
次にRoot/includes/joomla.phpを開き以下の行を変更します。(2826行目付近)
// check that username is not greater than 25 characters
$username = $this->username;
if ( strlen($username) > 25 ) {
$this->username = substr( $username, 0, 25 );
}
の25の部分をデータベースと同様に51に変更します。
// check that username is not greater than 25 characters
$username = $this->username;
if ( strlen($username) > 51 ) {
$this->username = substr( $username, 0, 51 );
}
以上で日本語17文字のユーザー名まで登録できるようになりました。
今回は、51としましたがお好みで3の倍数になるように変更されても良いのではないでしょうか。


































