用过织梦DEDECMS的朋友都知道,织梦dedecms自带手机端网站搜索页直接跳转到pc站的搜索页面,我们今天需要实现的效果是手机站搜索跳转到手机站搜索页面,那么要怎么实现呢?
第一种方法:
此种方法只需要修改一个php文件即可,修改相对简单一点。
找到 /plus/search.php
这个文件,搜索如下代码,大概在20行左右
$mid = (isset($mid) && is_numeric($mid)) ? $mid : 0;
在这段代码的下面添加:
$mobile = (isset($mobile) && is_numeric($mobile)) ? $mobile : 0;
if ( $mobile==1 )
{
define('DEDEMOB', 'Y');
}
然后在搜索页的地方form中添加一个隐藏的input,name为mobile,value值为1,如下代码:
<input type="hidden" name="mobile" value="1" />
如:
<form role="search" action="{dede:global.cfg_cmsurl/}/plus/search.php" method="get">
<input type="hidden" name="kwtype" value="0" />
<input type="hidden" name="mobile" value="1" />
<input class="txt fl" type="text" name="q" value="请输入关键字" onfocus="if(this.value==defaultValue)this.value=''" onblur="if(this.value=='')this.value=defaultValue">
<input class="btn fl icon" type="submit" value="搜索" name="submit">
</form>
其实添加这块的作用是当mobile
值为1
的时候,就跳转到手机站搜索,这对代码其实官方已经在arc.serchview.class.php
中加了修改,只是在页面中未实现。
第二种方法:
此种方法需要修改两个php文件,修改相对麻烦一点。
也是一种笨办法,就是将plus/search.php
和对应的include/arc.searchview.class.php
分别复制一份,将复制的新文件分别命名,对照search.php
命名为search_m.php
,arc.serchview.class.php
命名为arc.serchview.class_m.php
。
然后修改一下源码:
打开search_m.php
文件,里面第13行
require_once(DEDEINC."/arc.searchview.class.php");
修改为
require_once(DEDEINC."/arc.searchview.class_m.php");
打开include/arc.searchview.class_m.php
文件,找到第131行
$tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']
."/".$GLOBALS['cfg_df_style']."/search.htm";
修改为
$tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']
."/".$GLOBALS['cfg_df_style']."/search_m.htm";
以上就是两种方法实现织梦自带手机端搜索页直接跳转到search_m.htm手机站页面的全部内容,希望对大家的学习和解决疑问有所帮助