phpcms v9之所以如此受欢迎就是因为它强大的字段功能,后台模型内容任由自己改,是目前最好的二次开发的开源cms,今日有朋友在论坛上提问:在后台添加了多选字段,前台调用的时候显示的是后面的1或者2,不显示前面的值
找到文件 /phpcms/libs/function/extention.func.php,打开文件添加以下代码:
*根据box类型字段获取显示名称
*@param$field字段名称
*@param$value字段值
*@param$modelid字段所在模型id
functionbox($field,$value,$modelid=''){
$fields=getcache('model_field_'.$modelid,'model');
extract(string2array($fields[$field]['setting']));
$options=explode("\n",$fields[$field]['options']);
foreach($optionsas$_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_arras$_v){
if($_v)$string.=$option[$_v].'、';
}
break;
case'select':
$string=$option[$value];
break;//phpfensi.com
case'multiple':
$value_arr=explode(',',$value);
foreach($value_arras$_v){
if($_v)$string.=$option[$_v].'、';
}
break;
}
return$string;
}
这样就可以了,前台调用该字段的时候使用{box('fenlei',$r[fenlei],$modelid)}.
免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。