這個教學包含兩個部分, 一是如何新增自訂個人資料欄位, 二是如何將自訂個人資料欄位顯示在會員列表.
以新增 "姓名" 以及 "學號" 為例.
新增自訂個人資料欄位:
新增 "姓名"
- ACP > 會員及群組 > 自訂個人資料欄位 > 建立新的欄位
欄位定義: real_name
欄位類型: 單行文字欄位 - 顯示個人資料欄位: 是
看得見的選項 (可複選): (請自行依需要勾選)
語言特定選項 [zh_cmn_hant]: 填寫欄位名稱以及欄位描述 - 個人資料類型特定選項: 維持預設即可
- 若有使用其他語言, 則至語言特定選項中定義
- ACP > 會員及群組 > 自訂個人資料欄位 > 建立新的欄位
欄位定義: learn_number
欄位類型: 單行文字欄位 - 顯示個人資料欄位: 是
看得見的選項 (可複選): (請自行依需要勾選)
語言特定選項 [zh_cmn_hant]: 填寫欄位名稱以及欄位描述 - 個人資料類型特定選項: 維持預設即可 (同上)
若有使用其他語言, 則至語言特定選項中定義
ACP > 一般 > 伺服器組態 > 負荷設定 > 自訂個人資料欄位 > 允許風格在會員列表中顯示自訂個人資料欄位: 是 接下來, 已經註冊的會員必須到會員控制台 (UCP) 去修改 "個人資料", 才得以顯示自訂個人資料欄位的值.
將自訂個人資料欄位顯示在會員列表:
prosilver 風格
開啟
styles/prosilver/template/memberlist_body.html
找到
P.S. 有兩個地方, 請都要修改
代碼: 選擇全部
<th class="posts"><a href="{U_SORT_POSTS}#memberlist">{L_POSTS}</a></th>
代碼: 選擇全部
<th>{L_REAL2_NAME}</th>
<th>{L_LEARN_NUMBER}</th>
代碼: 選擇全部
<td class="posts"><!-- IF memberrow.POSTS --><a href="{memberrow.U_SEARCH_USER}" title="{L_SEARCH_USER_POSTS}">{memberrow.POSTS}</a><!-- ELSE -->{memberrow.POSTS}<!-- ENDIF --></td>
代碼: 選擇全部
<td><!-- IF memberrow.PROFILE_REAL_NAME_VALUE -->{memberrow.PROFILE_REAL_NAME_VALUE}<!-- ELSE --> <!-- ENDIF --></td>
<td><!-- IF memberrow.PROFILE_LEARN_NUMBER_VALUE -->{memberrow.PROFILE_LEARN_NUMBER_VALUE}<!-- ELSE --> <!-- ENDIF --></td>
P.S. 其他語系請自行修改
language/zh_cmn_hant/common.php
找到
代碼: 選擇全部
'MEMBERLIST' => '會員列表',
P.S. 因為測試發現 'REAL_NAME' 已經定義為 '收件人名稱', 所以改用 'REAL2_NAME'.
代碼: 選擇全部
// + 自訂個人資料欄位定義語言
'REAL2_NAME' => '姓名',
'LEARN_NUMBER' => '學號',
// - 自訂個人資料欄位定義語言
現在, 進入會員列表, 將可以看見您所新增的自訂個人資料欄位 (如下). 另外, 如果您想將 "網站,來自" 的欄位移除的話, 那麼可以這麼做.
開啟
styles/prosilver/template/memberlist_body.html
找到後, 刪除
P.S. 有兩個地方, 請都要修改
代碼: 選擇全部
<th class="info"><a href="{U_SORT_WEBSITE}#memberlist">{L_WEBSITE}</a>{L_COMMA_SEPARATOR}<a href="{U_SORT_LOCATION}">{L_LOCATION}</a></th>
代碼: 選擇全部
<td class="info"><!-- IF memberrow.U_WWW or memberrow.LOCATION --><!-- IF memberrow.U_WWW --><div><a href="{memberrow.U_WWW}" title="{L_VISIT_WEBSITE}: {memberrow.U_WWW}">{memberrow.U_WWW}</a></div><!-- ENDIF --><!-- IF memberrow.LOCATION --><div>{memberrow.LOCATION}</div><!-- ENDIF --><!-- ELSE --> <!-- ENDIF --></td>
現在, 進入會員列表, 將可以看見您所新增的自訂個人資料欄位 (如下). subsilver2 風格
因為此風格的樣板修改, 必須考量 "欄位數", "欄位寬度",..等,
所以我直接將新增的 "姓名", "學號" 欄位, 取代原來的 "E-mail", "網站" 欄位.
開啟
styles/subsilver2/template/memberlist_body.html
找到
代碼: 選擇全部
<th nowrap="nowrap" width="11%"><a href="{U_SORT_EMAIL}">{L_EMAIL}</a></th>
<th nowrap="nowrap" width="11%"><a href="{U_SORT_WEBSITE}">{L_WEBSITE}</a></th>
代碼: 選擇全部
<th nowrap="nowrap" width="11%">{L_REAL2_NAME}</th>
<th nowrap="nowrap" width="11%">{L_LEARN_NUMBER}</th>
代碼: 選擇全部
<td class="gen" align="center"> <!-- IF memberrow.U_EMAIL --><a href="{memberrow.U_EMAIL}">{EMAIL_IMG}</a><!-- ENDIF --> </td>
<td class="gen" align="center"> <!-- IF memberrow.U_WWW --><a href="{memberrow.U_WWW}">{WWW_IMG}</a><!-- ENDIF --> </td>
代碼: 選擇全部
<td class="gen" align="center"> <!-- IF memberrow.PROFILE_REAL_NAME_VALUE -->{memberrow.PROFILE_REAL_NAME_VALUE}<!-- ELSE --> <!-- ENDIF --> </td>
<td class="gen" align="center"> <!-- IF memberrow.PROFILE_LEARN_NUMBER_VALUE -->{memberrow.PROFILE_LEARN_NUMBER_VALUE}<!-- ELSE --> <!-- ENDIF --> </td>
清除論壇快取.
現在, 進入會員列表, 將可以看見您所新增的自訂個人資料欄位 (如下). 後記:
官方相關討論文章, 有提到將自訂個人資料欄位 "排序" 的方法;
因為這個部分稍嫌複雜, 而且個人以為不太需要, 所以沒有深究.
有興趣的網友, 請自行前往參考.
http://www.phpbb.com/community/viewtopi ... 1&t=655245