网站搭建:织梦伪静态后搜索页链接含有plus目录

最近在将页面链接进行静态化后发现一个问题,那就是在页面使用搜索功能时,整个页面里面的链接都会多一个plus目录,比如我的一篇文章链接是:https://www.mianfeiseo.net/view-8-1.html,当我通过“后台地址错误”这个词搜到的链接就是:https://www.mianfeiseo.net/plus/view-8-1.html,这样的结果就是导致搜索页面的链接全部会返回一个404页面,这对优化和用户体验都是很不友好的。我在网上找了好久,但是每个文章讲的都不全面,我现在将自己整理的一个方法,也是我使用后修改成功的方法给大家介绍一下,这个方法需要修改文件,而且需要将search.php文件移动到网站根目录,并且调用的时候要调用根目录的search.php而不是plus目录的。

首先要知道织梦cms5.7默许的查找页是在根目录下的plus文件夹内的search.php,当你点查找的时分连接地址就是你的网址/plus/search.php,不影响查找或是baidu录入,可是做seo的时分会在robots.txt中把plus文件夹屏蔽掉,不让搜索引擎录入,所以要把search.php移动至网站根目录,这样搜索页面的连接就是你的网站/search.php了.

 打开include/taglib/hotwords.lib.php找到第46行把$cfg_phpurl改为$cfg_cmsurl 删掉search.php前的plus,如果没有就不必理会.改完之后代码如下:

$hotword .= " <a href='".$cfg_cmsurl."/search.php?keyword=".urlencode($row['keyword'])."'>".$row['keyword']."</a> ";

然后需要修改搜索结果页的相关搜索,相关搜索不改的话,点击相关搜索链接里面还是有plus的.

翻开include/arc.searchview.class.php找到第309行,把里面的plus删除即可.

$likeword.= "<a href='search.php?keyword=".urlencode($row['keyword'])."&searchtype=titlekeyword'".$style."><u>".$row['keyword']."</u></a> ";

这样点相关搜索的关键字就不会出现plus了.

最后要修改的是后台,搜索关键字维护里面的链接

翻开/dede/search_keywords_main.php找到第98行(不知道你们有没有添加过东西,位置大概就是在这里,具体的看自己的实际情况),把里面的phpurl改为cmsurl即可,这样在后台修改搜索关键字后,点击结果显示的也是你的网站/search.php了.

<td><a href='{$cfg_cmsurl}/search.php?kwtype=0&keyword=".urlencode($row['keyword'])."&searchtype=titlekeyword' target='_blank'><u>{$row['result']}</u></a></td>

以上三个文件改完之后还要做最后一步,就是把search.php从plus文件夹内移动到网站根目录,修改12行

require_once(dirname(__FILE__)."/../include/common.inc.php");修改为require_once("include/common.inc.php");

然后在需要的地方做上搜索的锚文本即可.

在添加搜索的锚文本时需要注意,不要调用plus目录中的search.php文件

默认的调用方法

默认调用plus

修改和移动文件后的调用方法

修改后调用

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.mianfeiseo.net/article-49.html