如何在织梦DedeCms的搜索框中添加提示信息?
- 行业动态
- 2024-10-25
- 2
在织梦DedeCms中,搜索框显示提示信息是一个常见的需求,通过自定义提示信息,不仅可以提升用户体验,还能增加网站的个性化,下面将详细讲解如何在织梦DedeCms的搜索框中显示提示信息。
修改提示信息的步骤
1. 找到并编辑common.func.php文件
需要找到织梦DedeCms根目录下的include/common.func.php
文件,这个文件包含了处理提示信息的核心函数ShowMsg
。
2. 查找并修改ShowMsg函数
打开common.func.php
文件后,使用编辑器(如Notepad++)查找“DEDECMS 提示信息!”这一字符串,这个字符串通常出现在两个地方,分别对应于前台和后台的提示信息。
function ShowMsg($msg, $gourl, $onlymsg=0, $limittime=0) { if(empty($GLOBALS['cfg_plus_dir'])) $GLOBALS['cfg_plus_dir'] = '..'; $htmlhead = "r <script language="JavaScript" type="text/javascript">r "; $htmlhead .= "r ".(isset($GLOBALS['ucsynlogin']) ? $GLOBALS['ucsynlogin'] : '')."r "; $litime = ($limittime==0 ? 1000 : $limittime); $func = ''; if($gourl=='1') { if($limittime==0) $litime = 5000; $gourl = ""; } if($gourl=='' || $onlymsg==1) { $msg = ""; } else { if(preg_match('/close::/',$gourl)) { $tgobj = trim(preg_replace('/close::/', '', $gourl)); $gourl = 'javascript:;'; $func .= "window.parent.document.getElementByIdx_x('{$tgobj}').style.display='none';r "; } $func .= " var pgo=0; function JumpUrl(){ if(pgo==0){ location='$gourl'; pgo=1; } } r "; $rmsg = $func; $rmsg .= "document.write("<div class='dede_msg' style='width:90%; margin:auto;'>");r "; $rmsg .= "document.write("<h6>请稍后再试</h6></div><div class='modalbody'>");r "; $rmsg .= "document.write("");r "; $rmsg .= "document.write("".str_replace(""","“",$msg)."");r "; $rmsg .= "document.write("");r "; if($onlymsg==0) { if( $gourl != 'javascript:;' && $gourl != '') { $rmsg .= "<br />如果你的浏览器没反应,请点击这里..."; $rmsg .= "<a href='javascript:JumpUrl()'>"; $rmsg .= "onclick="this.style.behavior='url(#default#homepage)';""; $rmsg .= "style='color:#FFF; fontweight:bold;cursor:pointer' onFocus='this.blur();'>"; $rmsg .= "title='点击这里继续';alt='点击这里继续';"; $rmsg .= "name='syskefilter' id='syskefilter' value='点击这里继续'>"; $rmsg .= "type='button'>"; $rmsg .= "onClick="this.disabled=true;location='$gourl';return false;""; $rmsg .= ">点击这里继续...</a>"; $rmsg .= "<script type='text/javascript'>"; $rmsg .= "setTimeout('JumpUrl()',$litime);"; $rmsg .= "</script>"; } } else { $rmsg .= "r "; } $msg = $htmlhead.$rmsg.$htmlfoot; } echo $msg; }
在上面的代码中,“请稍后再试”就是我们需要修改的提示信息,将其替换为您希望显示的提示内容,“搜索频率过快,请稍后再试!”。
3. 保存并测试
完成上述修改后,保存common.func.php
文件,并在浏览器中刷新您的网站以查看效果,搜索框应该已经显示了您自定义的提示信息。
示例表格:常见提示信息及其应用场景
提示信息 | 应用场景 |
搜索频率过快,请稍后再试! | 用户在短时间内多次进行搜索操作时触发 |
输入关键词过短,请重新输入! | 用户输入的关键词长度不符合要求时触发 |
未找到相关结果,请检查关键词! | 用户搜索的关键词没有匹配到任何结果时触发 |
系统维护中,请稍后再试! | 当网站正在进行维护时触发 |
常见问题与解答(FAQs)
Q1. 如何更改提示信息的样式?
A1. 要更改提示信息的样式,可以直接在common.func.php
文件中的ShowMsg
函数内修改CSS样式,可以将默认的<div class='dede_msg' style='width:90%; margin:auto;'>
改为<div class='custom_msg' style='backgroundcolor: #f0f0f0; border: 1px solid #ccc; width: 90%; margin: auto; padding: 10px; textalign: center;'>
,这样就能改变提示信息的背景颜色、边框和文本对齐方式等。
Q2. 如果我不想显示提示信息怎么办?
A2. 如果您不希望显示提示信息,可以在common.func.php
文件中的ShowMsg
函数内,将生成提示信息的代码注释掉或删除,可以注释掉以下几行代码:
// $rmsg .= "document.write("<div class='dede_msg' style='width:90%; margin:auto;'>");r "; // $rmsg .= "document.write("<h6>请稍后再试</h6></div><div class='modalbody'>");r "; // $rmsg .= "document.write("");r "; // $rmsg .= "document.write("".str_replace(""","“",$msg)."");r "; // $rmsg .= "document.write("");r ";
这样,当触发提示信息时,页面上将不会显示任何提示内容,不过请注意,这样做可能会影响用户体验,建议谨慎使用。
通过以上步骤,您可以轻松地在织梦DedeCms的搜索框中显示自定义的提示信息,并根据需要调整其样式和行为,如果有任何疑问或需要进一步的帮助,请随时咨询专业的技术支持人员。
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/163921.html