Discuz X 註冊性別由 「列表」 變 「單選」 的設置方法,必選功能可以在後台自行設置,後台位置是:用户-用户欄目-性別,點擊後邊的編輯,將其中的 「是否必填」 選 「是」 即可。
設置方法:
定位文件
../source/function/function_profile.php
找到代碼段
- elseif($fieldid=='gender') {
- if($field['unchangeable'] && $space[$fieldid] > 0) {
- return '<span>'.lang('space', 'gender_'.intval($space[$fieldid])).'</span>';
- }
- $selected = array($space[$fieldid]=>' selected="selected"');
- $html = '<select name="gender" id="gender" tabindex="1">';
- if($field['unchangeable']) {
- $html .= '<option value="">'.lang('space', 'gender').'</option>';
- } else {
- $html .= '<option value="0"'.($space[$fieldid]=='0' ? ' selected="selected"' : '').'>'.lang('space', 'gender_0').'</option>';
- }
- $html .= '<option value="1"'.($space[$fieldid]=='1' ? ' selected="selected"' : '').'>'.lang('space', 'gender_1').'</option>'
- .'<option value="2"'.($space[$fieldid]=='2' ? ' selected="selected"' : '').'>'.lang('space', 'gender_2').'</option>'
- .'</select>';
修改為
- elseif($fieldid=='gender') {
- if($field['unchangeable'] && $space[$fieldid] > 0) {
- return '<span>'.lang('space', 'gender_'.intval($space[$fieldid])).'</span>';
- }
- $selected = array($space[$fieldid]=>'checked="checked"');
- if($field['unchangeable']) {
- $html .= '<option value="">'.lang('space', 'gender').'</option>';
- }
- $html .= ''
- .'<label ><input type="radio" name="gender" id="gender" value="1" '.($space[$fieldid]=='1' ? 'checked="checked"' : '').'/>'.lang('space', 'gender_1').' '.'</label>'
- .'<label ><input type="radio" name="gender" id="gender" value="2" '.($space[$fieldid]=='2' ? 'checked="checked"' : '').'/>'.lang('space', 'gender_2').' '.'</label>'
- .'<label ><input type="radio" name="gender" id="gender" value="0" '.($space[$fieldid]=='0' ? 'checked="checked"' : '').'/>'.lang('space', 'gender_0').' '.'</label>';
其中,」value="0"這一行代碼是 「保密」 選項,換到了第三行,可以自行調整位置。但是千萬注意末尾的分號 「;」,一定不要忘記。
"gender_0"對應的顯示文字是 「保密」,可以修改為其他。
定位文件
../source/language/lang_space.php
找到:
- 'gender_0' => '其它',
- 'gender_1' => '男',
- 'gender_2' => '女',
可以將對應的文字修改為自己想要的,比如帥哥、美女、人妖等。
還可以單獨額外增加更多的性別,只要稍微分析一下代碼即可明白。
懷疑其中某幾行代碼已經多餘了,但是不明白具體是不是要去掉,但是不去掉也沒發現影響什麼,希望高手給看一下,謝謝。