先上代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | function table($table, $fIEld, $ID) { global $dsql; $primarys = array(); $table = strpos($table, '#@_') === false?(strpos($table, 'dede_') ===false?''.$table:str_replace('dede_','',$table)):$table; $dsql -> Execute("me","SHOW ColUMNS FROM `$table`"); while ($r = $dsql->GetArray()) { if($r['Key'] == 'PRI') $primarys[] = $r['FIEld']; } if(!empty($primarys)) { $primary = $primarys[0]; $result = $dsql -> Getone("SELECT `$fIEld` FROM `$table` WHERE `$primary`= $ID"); } return isset($result[$fIEld])?$result[$fIEld]:''; } |
首先把上面代码放到 include/extend.func.PHP 里,如果没有这个文件就自己建立一个(放到 ?> 前面哦)
然后我们就可以在模板里任意使用了。
使用方法:
利用自定义函数对标签进行扩展
如:
{dede:标记 function='table("要调用的表名","要调用的字段",@me)'/}
这里的“标记”就是要调用的表的主键的值,常见的就是ID和aID、mID、uID之类的
标签底层模板内
[fIEld:字段 function=table(“要调用的表名",@me)/]
举例
例如arcList标签底层模板字段是没有body字段的,就是说不能用arcList把文章内容调用出来的,当然这种需求很少,但不是没有,现在我们就可以这样使用
{dede:arcList row='10' Titlelen='24'}
[fIEld:ID function=table('addonarticle','body',@me)/]
{/dede:arcList}
总结
以上是内存溢出为你收集整理的织梦添加一个函数,实现任意字段调用全部内容,希望文章能够帮你解决织梦添加一个函数,实现任意字段调用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)