网格

 找回密码
 立即注册

Discuz! X3.4 SEO手机伪静态设置原理和方法

[复制链接]
69伙伴 发表于 2022-5-9 10:23:19 | 显示全部楼层 |阅读模式
Discuz! X3.4 SEO手机伪静态设置原理和方法
dz伪静态 手机版竟然没有!插件卖钱的。
手动处理方法如下
后台开启伪静态,seo选项
论坛主题列表页.论坛主题内容页 是必须开启的。
之后配置nginx或者apache 伪静态 此步不多介绍。

在移动版中,找到source\class\helper\helper_mobile.php中的函数 mobilereplace
55行 或者最后一个类,
就是下面代码第9行 ,把原来的 return $replace; 换成 $replace=mbrewriteoutput($replace);

  1.         public static function mobilereplace($file, $replace) {
  2.                 if(strpos($replace, 'mobile=') === false) {
  3.                         if(strpos($replace, '?') === false) {
  4.                                 $replace = 'href="'.$file.$replace.'?mobile='.IN_MOBILE.'"';
  5.                         } else {
  6.                                 $replace = 'href="'.$file.$replace.'&mobile='.IN_MOBILE.'"';
  7.                                 //$replace=str_replace('&mobile=2','',$replace);
  8.                                 $replace=mbrewriteoutput($replace);

  9.                         }
  10.                         return $replace;
  11.                 } else {
  12.                         return 'href="'.$file.$replace.'"';
  13.                 }
  14.         }
复制代码





然后在source/function/function_core.php中增加函数
(从最后网上上,末尾找到 if(PHP_VERSION < '7.0.0') {  ,在其上面添加)

  1. function mbrewriteoutput($eurl)
  2. {
  3.          if(strstr($eurl,"forum.php?mod=forumdisplay&amp;fid="))
  4.          {        
  5.           $eurl=str_replace('&amp;mobile=2','',$eurl);
  6.            $fidarr=explode("fid=",$eurl);
  7.             $fid=$fidarr[1];
  8.             $fid=str_replace('"','',$fid);
  9.              $eurl=str_replace('forum.php?mod=forumdisplay&amp;fid='.$fid,'forum-'.$fid.'-1.html',$eurl);
  10.              $eurl=str_replace('forum.php?mod=forumdisplay&fid='.$fid,'forum-'.$fid.'-1.html',$eurl); return $eurl;
  11.              }
  12.              elseif(strstr($eurl,"forum.php?mod=viewthread&amp;tid=")){ $eurl=str_replace('&amp;extra=page%3D1&amp;mobile=2','',$eurl); $tidarr=explode("tid=",$eurl);
  13.               $tid=$tidarr[1];
  14.               $tid=str_replace('"','',$tid);
  15.                $eurl=str_replace('forum.php?mod=viewthread&amp;tid='.$tid,'thread-'.$tid.'-1-1.html',$eurl);
  16.                 $eurl=str_replace('forum.php?mod=viewthread&amp;tid='.$tid,'thread-'.$tid.'-1-1.html',$eurl);
  17.                  return $eurl; }elseif(strstr($eurl,"forum.php?forumlist=1&amp;mobile=2")){ $eurl=str_replace('forum.php?forumlist=1&amp;mobile=2','https://www.wgpro.com/',$eurl); return $eurl;
  18.                   } return $eurl;
  19.                    }


  20. //在这上面添加 以上部分 18行 有一个网址 改成自己的
  21. //(以下内容不用帖,是定位地址)
  22. if(PHP_VERSION < '7.0.0') {
  23.         function dpreg_replace($pattern, $replacement, $subject, $limit = -1, &$count) {
  24.                 return preg_replace($pattern, $replacement, $subject, $limit, $count);
  25.         }
  26. } else {
  27.         function dpreg_replace($pattern, $replacement, $subject, $limit = -1, &$count) {
  28.                 require_once libfile('function/preg');
  29.                 return _dpreg_replace($pattern, $replacement, $subject, $limit, $count);
  30.         }
  31. }

复制代码

这样就可以实现手机伪静态



回复

使用道具 举报

【附件·直接下】 不用注册

联系我们 ( 京ICP备16001788号 ) | 京公网安备 11010502049360号 | 2012- WGPro.CoM |

GMT+8, 2022-7-4 16:32

Powered by Discuz! X3.4

快速回复 返回顶部 返回列表