const に変数を使うと言うのは想定していませんでした。
確かに使える方が便利ですね。

次の変更で使えるようになります。
--- ccenter/functions.php	21  9月 2008 18:00:22 +0900	1.27
+++ ccenter/functions.php	19 10月 2008 02:04:23 +0900	
@@ -202,7 +202,7 @@
 	    break;
 	case 'hidden':
 	case 'const':
-	    $val = join(',', $item['options']);
+	    $val = eval_user_value(join(',', $item['options']));
 	    break;
 	case 'file':
 	    $val = '';		// filename
@@ -287,9 +287,10 @@
     return $updates;
 }
 
-function cc_make_widget($item) {
-    global $myts, $xoopsUser, $defuser;
+function eval_user_value($str) {
+    static $defuser;
     if (empty($defuser)) {
+	global $xoopsUser;
 	$defuser = array();
 	$user = is_object($xoopsUser)?$xoopsUser:new XoopsUser;
 	$keys = array_keys($user->getVars());
@@ -303,6 +304,11 @@
 	    }
 	}
     }
+    return str_replace(array_keys($defuser), $defuser, $str);
+}
+
+function cc_make_widget($item) {
+    global $myts;
     $input = '';
     $fname = $item['field'];
     $names = "name='$fname' id='$fname'";
@@ -316,7 +322,7 @@
     switch($type) {
     case 'hidden':
     case 'const':
-	$input=htmlspecialchars(join(',', $options), ENT_QUOTES);
+	$input=htmlspecialchars(eval_user_value(join(',', $options)), ENT_QUOTES);
 	break;
     case 'select':
 	$def = '';
@@ -413,7 +419,7 @@
 		}
 	    }
 	}
-	$val = htmlspecialchars(str_replace(array_keys($defuser), $defuser, $val), ENT_QUOTES);
+	$val = htmlspecialchars(eval_user_value($val), ENT_QUOTES);
 	if ($type == 'textarea') {
 	    $estr = get_attr_value($attr, 'rows');
 	    if (!empty($estr)) $astr .= ' rows="'.$estr.'"';