栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP > php开源框架 > dedecms

dedecms 织梦模板sql标签中调用其它变量值功能修改

dedecms 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

dedecms 织梦模板sql标签中调用其它变量值功能修改

织梦cms的代码除了自身的功能以外在模板标签调用以及自定义模型等方面确实很差,下面是是用sql标签调用匹配其他参数的代码修改:
一般在文章页使用sql标签匹配另外一个参数我们会按照以下这样写,但结果输出为空:
{dede:sql sql="select title from `dede_archives` where `title` like '%~pername~%'" db='default'}
 
  • [field:title/]
  •  
    {/dede:sql}
    DEDECMS模板标签默认编译的结果就是select title from `dede_archives` where `title` like '~%pername%~' 并没有传递进来pername的参数。
    此时我们需要对织梦cms的函数进行以下修改:
    $sql = str_replace($conditions[0][$key], "'".addslashes($refObj->Fields[$value])."'", $sql);
    修改为:(只需把引号去掉就可以实现了)
    $sql = str_replace($conditions[0][$key], addslashes($refObj->Fields[$value]), $sql);
    或者我们可以复制一份include/taglib/sql.lib.php重命名为likesql.lib.php并将对应代码修改,这样我们可以不影响{dede:sql sql=""}标签而用新的{dede:likesql sql=""}来实现模糊搜索。
    转载请注明:文章转载自 www.mshxw.com
    本文地址:https://www.mshxw.com/it/7056.html
    我们一直用心在做
    关于我们 文章归档 网站地图 联系我们

    版权所有 (c)2021-2022 MSHXW.COM

    ICP备案号:晋ICP备2021003244-6号