phpcms v9之所以如此受歡迎就是因為它強大的字段功能,后臺模型內容任由自己改,是目前最好的二次開發的開源cms,今日有朋友在論壇上提問:在后臺添加了多選字段,前臺調用的時候顯示的是后面的1或者2,不顯示前面的值
找到文件 /phpcms/libs/function/extention.func.php,打開文件添加以下代碼:
- * 根據box類型字段獲取顯示名稱
- * @param $field 字段名稱
- * @param $value 字段值
- * @param $modelid 字段所在模型id
- function box($field, $value, $modelid='') {
- $fields = getcache('model_field_'.$modelid,'model');
- extract(string2array($fields[$field]['setting']));
- $options = explode("/n",$fields[$field]['options']);
- foreach($options as $_k) {
- $v = explode("|",$_k);
- $k = trim($v[1]);
- $option[$k] = $v[0];
- }
- $string = '';
- switch($fields[$field]['boxtype']) {
- case 'radio':
- $string = $option[$value];
- break;
- case 'checkbox':
- $value_arr = explode(',',$value);
- foreach($value_arr as $_v) {
- if($_v) $string .= $option[$_v].' 、';
- }
- break;
- case 'select':
- $string = $option[$value];
- break; //Vevb.com
- case 'multiple':
- $value_arr = explode(',',$value);
- foreach($value_arr as $_v) {
- if($_v) $string .= $option[$_v].' 、';
- }
- break;
- }
- return $string;
- }
這樣就可以了,前臺調用該字段的時候使用{box('fenlei',$r[fenlei],$modelid)}.
新聞熱點
疑難解答