在搜索页调用自定义字段,使其可有让用户搜索这个自定义字段,找了好多文章和教程,却发现dedecms的标签底层模板字段不包括这个字段呢?这就大大限制了灵活性,但也不可能让所有字段都允许调用的,那样就会大大降低系统效率,所以今天分享的是一个比较完美解决这个问题的方法,配合dede标签,几乎可以说没有什么不能调用的了。
首先把上面代码放到 include/extend.func.php 里
使用方法:
- function table($table, $field, $id)
- {
- global $dsql;
- $primarys = array();
- $table = strpos($table, '#@_') === false?(strpos($table, 'dede_') === false?'cn_'.$table:str_replace('dede_','cn_',$table)):$table;
- $dsql -> Execute("me","SHOW COLUMNS FROM `$table`");
- while ($r = $dsql->GetArray())
- {
- if($r['Key'] == 'PRI') $primarys[] = $r['Field'];
- } //Vevb.com
- if(!emptyempty($primarys))
- {
- $primary = $primarys[0];
- $result = $dsql -> GetOne("SELECT `$field` FROM `$table` WHERE `$primary`= $id");
- }
- return isset($result[$field])?$result[$field]:'';
- }
新闻热点
疑难解答