DEDE自动更新手机版首页、列表页、文章页

dede,PC站和手机站是两个独立站且共用数据时,每次在pc站发布的文章,手机站都不能自动生成新的首页、列表页、内容页。有没有什么方法让pc站发布新文章后,手机站可以自动... dede,PC站和手机站是两个独立站且共用数据时, 每次在pc站发布的文章,手机站都不能自动生成新的首页、列表页、内容页。
有没有什么方法让pc站发布新文章后,手机站可以自动生成新的首页、列表页、内容页呢?或者是定时自动更新。主要针对的是虚拟空间。
展开
 我来答
点墨杂谈2024

2015-12-01 · 爱好广泛,一起闲聊吧
点墨杂谈2024
采纳数:854 获赞数:2936

向TA提问 私信TA
展开全部
后台-系统设置-系统参数设置

搜索“更新”
发布文章后马上更新网站主页: 是 否 勾选是
发表文章后马上更新相关栏目: 是 否 勾选是
发表文章后马上更新上下篇: 是 否 勾选是
更多追问追答
追问
pc站可以,手机站不行
追答
手机站不也是独立的么?也同样设置下试试。

如果不行就不知道了。
南风知我丨
2020-04-25 · TA获得超过257个赞
知道答主
回答量:112
采纳率:53%
帮助的人:21.4万
展开全部

请先确保网站已经配置生成手机静态功能。

修改或者覆盖文件之前请备份后台这个文件 \dede\task_do.php(dede表示你的后台目录)

1、后台-系统配置,添加变量

变量名称:cfg_makemobile

变量类型:布尔(Y/N)

参数说明:移动版生成静态文件

变量值:Y

所在组:站点设置

复制

2、\dede\task_do.php 找到

if(is_array($nextRow)){
$envs['aid'] = $nextRow['id'];
$arc = new Archives($nextRow['id']);
$arc->MakeHtml();}

在它的下面加入

//发布文章后自动生成移动版文章页、上一篇下一篇 开始if($cfg_makemobile == 'Y'){
define('DEDEMOB', 'Y');
$arc = new Archives($aid);
$arc->MakeHtml();
if(is_array($preRow))
{
$envs['aid'] = $preRow['id'];
$arc = new Archives($preRow['id']);
$arc->MakeHtml();
}
if(is_array($nextRow))
{
$envs['aid'] = $nextRow['id'];
$arc = new Archives(nextRow['id']);
$arc->MakeHtml();
}}//发布文章后自动生成移动版文章页、上一篇下一篇 结束


继续找到

$pv->SaveToHtml($homeFile);

在它的下面加入

//发布文章后自动生成移动版首页 开始

if($cfg_makemobile == 'Y'){
$templet = str_replace("{style}", $cfg_df_style, $row['templet']);
$templet = str_replace('.htm','_m.htm',$templet);
$homeFile = dirname(__FILE__).'/'.str_replace("../", '../m/',$row['position']);
$homeFile = str_replace("//", "/", str_replace("\\", "/", $homeFile));
$fp = fopen($homeFile, 'w') or die("无法更新移动版主页到:$homeFile 位置");
fclose($fp);
$tpl = $cfg_basedir.$cfg_templets_dir.'/'.$templet;
if(!file_exists($tpl))
{
$tpl = $cfg_basedir.$cfg_templets_dir.'/default/index_m.htm';
if(!file_exists($tpl)) exit("无法找到移动版主页模板:$tpl ");
}
$GLOBALS['_arclistEnv'] = 'index';
$pv->SetTemplet($tpl);
$pv->SaveToHtml($homeFile);}//发布文章后自动生成移动版首页 结束


最后继续找到

require_once(DEDEINC."/arc.listview.class.php");$lv = new ListView($tid);$lv->CountRecord();$lv->MakeHtml();$lv->Close();


在它的下面加入

//发布文章后自动生成移动版列表页 开始

if($cfg_makemobile == 'Y'){
define('DEDEMOB', 'Y');
$lv = new ListView($tid);
$lv->CountRecord();
$lv->MakeHtml();
$lv->Close();}

//发布文章后自动生成移动版列表页 结束


不过有一个问题就是栏目不能自动更新,暂时未找到解决办法。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友75f5a61
2018-03-09 · TA获得超过143个赞
知道小有建树答主
回答量:157
采纳率:87%
帮助的人:40.8万
展开全部
如果启用了静态页面(访问的是index.html),那么:进入文件管理,手动删除m文件夹下的index.html文件,这样再次访问时会自动更新一个静态页面, 这个页面就是最新的。
如果没有启用静态页面(访问的是index.php),更新系统缓存即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式