首页/新闻资讯/技术教程/discuz

在线咨询

15918836078 网站设计、网站建设咨询

discuz 手机版mip实现过程和如何解决分页问题

发布时间:2019-02-23 2674 次浏览


MIP 代码校验工具_移动网页加速器_MIP Mobile Instant Pages .png

写一下自己在做discuz mip模板开发遇到的问题,discuz要实现mip其实还是有点难度的,首先我们按照《mip官方的页面创建指导》处理好img 和 script的替换工作


discuz mip处理分页函数

打开\source\class\helper  编辑helper_page.php

搜索

$showpagejump = TRUE;

改为

$showpagejump = FALSE;

目的是关闭手机版 列表页面的输入框跳转

其次打开\source\function function_core.php

define('DISCUZ_CORE_FUNCTION', true);

下方添加过滤处理函数

function mippreg($domain,$htmlstr) {	
$htmlstr = preg_replace('/(src|data-original)=([\"|\']{1})([\/]{1})([^\.]+?)(\.[jpg|jpg|gif|png|jpeg]*?)([\"|\']{1})/i','${1}=${2}${4}${5}${6}',$htmlstr);	
$htmlstr = preg_replace('/(src|data-original)=([\"|\']{1})(?!http:\/\/)([^\.]+?)(\.[jpg|jpg|gif|png|jpeg]*?)([\"|\']{1})/i','${1}=${2}'.$domain.'${3}${4}${5}${6} ',$htmlstr);	
$htmlstr = preg_replace('/<img([^\>]+)\/*?>/i','<mip-img layout="container" ${1}></mip-img>',$htmlstr); //img 替换为 mip-img	
$htmlstr = preg_replace('/\s*?style=\"([^\"]*?)\"/i','',$htmlstr);//去除style标签	
$htmlstr = preg_replace('/<a(.*?)href=([\"|\']{1})([\/]{1})([^\"\']*?)\2/i','<a${1}href=${2}${4}${2}',$htmlstr); //替换掉href前缀/	
$htmlstr = preg_replace('/<a(.*?)\s*?target=([\"|\']{1})([^\"\']+?)\2/i','<a${1}',$htmlstr);//替换掉target	
$htmlstr = preg_replace('/<a([^\>]*?)href=([\"|\']{1})(magnet:|thunder:)([^\"]*?)\2([^\>]*?)>([^\<]*?)<\/a>/i','${3}${4}',$htmlstr);//替换magnet: thunder:协议	
$htmlstr = preg_replace('/<a([^\>]*?)/i','<a${1} target="_blank"',$htmlstr);//增加target	
return $htmlstr;}

编辑模板的header.htm或者header.php,去除<base href="{$_G['siteurl']}" />

然后调用模板路径改为

{$_G['siteurl']}$_G['style'][styleimgdir]

这三个是主要的问题,希望能够给你的开发减少一些工作。

文章标签:

上一篇: 没有了

下一篇: 没有了