Discuz! X3.1中实现不同版块使用不同的模板文件
最近要建立一个社区,手机版、PC版版面要大致相同,但领导提出一个建设性方案,论坛的XXXX版块要标题+图片形式展示出来,问题大了,DZ的论坛都是一个版面,其中还涉及到图片的调用。目前调用图片还不是很科学。暂且先记下来。
安装步骤
第一步:升级数据库
ALTER TABLE `pre_forum_forum` ADD `ffile` CHAR( 40 ) NOT NULL AFTER `styleid` , ADD `vfile` CHAR( 40 ) NOT NULL AFTER `ffile`;
第二步:修改source/admincp/admincp_forums.php文件
找到以下代码
showsetting('forums_edit_extend_threadcache', 'threadcachesnew', $forum['threadcaches'], 'text');
在下面添加
//----edit
showsetting('forums_edit_extend_ffile', 'ffilenew', $forum['ffile'], 'text');
showsetting('forums_edit_extend_vfile', 'vfilenew', $forum['vfile'], 'text');
//----edit
找到以下代码
'domain' => $domain,
在下面添加
//----edit
'ffile' => $_GET['ffilenew'],
'vfile' => $_GET['vfilenew'],
//----edit
第三步:修改source/module/forum/forum_forumdisplay.php
找到以下代码
include template($template);
替换成
//eidt
if($_G['forum']['ffile'])
$skinfile=$_G['forum']['ffile'];
else
$skinfile = $template;
include template($skinfile);
//eidt
第四步:修改source/module/forum/forum_viewthread.php
找到以下代码
include template('diy:forum/viewthread'.$sufix.':'.$_G['fid']);
替换成
//eidt
if($_G['forum']['vfile']){
include template($_G['forum']['vfile']);
}
else{
include template('diy:forum/viewthread'.$sufix.':'.$_G['fid']);
}
//eidt
第五步:修改source/language/lang_admincp.php
找到以下代码
'forums_edit_extend_threadcache_comment' => '此功能可以将游客经常访问的主题临时缓存起来,缓解大型服务器压力。系数范围 0~100,建议数值 20 ~ 40,0 为关闭缓存。在磁盘空间允许的情况下,适当调高缓存系数,可以提高缓存效果<br />注:版块设置完毕后请到 基本设置 -> 站点页面缓存设置,调整其缓存时间。',
在下面添加
//----edit
'forums_edit_extend_ffile' => '版块模板文件:',
'forums_edit_extend_ffile_comment' => '填写格式如forum/forumdisplay,请在特殊需要时进行设置,若为空则默认为forumdisplay',
'forums_edit_extend_vfile' => '版块主题模板文件:',
'forums_edit_extend_vfile_comment' => '填写格式如forum/viewthread,请在特殊需要时进行设置,若为空则默认为viewthread',
//----edit
第六步:进入后台更新缓存后进入【论坛/版块/编辑/扩展设置】即可看到相应的设置
设置:版块模板文件、版块主题模板文件
注意:设置模板文件不需要填写此文件的后缀名
例子:模板文件为test.htm则只需填写forum/test即可
写在最后:和手机相关的也可以这样写:
if(defined('IN_MOBILE') && $_G['forum']['ffile']) include template('forum/forumdisplay_other');
安装步骤
第一步:升级数据库
ALTER TABLE `pre_forum_forum` ADD `ffile` CHAR( 40 ) NOT NULL AFTER `styleid` , ADD `vfile` CHAR( 40 ) NOT NULL AFTER `ffile`;
第二步:修改source/admincp/admincp_forums.php文件
找到以下代码
showsetting('forums_edit_extend_threadcache', 'threadcachesnew', $forum['threadcaches'], 'text');
在下面添加
//----edit
showsetting('forums_edit_extend_ffile', 'ffilenew', $forum['ffile'], 'text');
showsetting('forums_edit_extend_vfile', 'vfilenew', $forum['vfile'], 'text');
//----edit
找到以下代码
'domain' => $domain,
在下面添加
//----edit
'ffile' => $_GET['ffilenew'],
'vfile' => $_GET['vfilenew'],
//----edit
第三步:修改source/module/forum/forum_forumdisplay.php
找到以下代码
include template($template);
替换成
//eidt
if($_G['forum']['ffile'])
$skinfile=$_G['forum']['ffile'];
else
$skinfile = $template;
include template($skinfile);
//eidt
第四步:修改source/module/forum/forum_viewthread.php
找到以下代码
include template('diy:forum/viewthread'.$sufix.':'.$_G['fid']);
替换成
//eidt
if($_G['forum']['vfile']){
include template($_G['forum']['vfile']);
}
else{
include template('diy:forum/viewthread'.$sufix.':'.$_G['fid']);
}
//eidt
第五步:修改source/language/lang_admincp.php
找到以下代码
'forums_edit_extend_threadcache_comment' => '此功能可以将游客经常访问的主题临时缓存起来,缓解大型服务器压力。系数范围 0~100,建议数值 20 ~ 40,0 为关闭缓存。在磁盘空间允许的情况下,适当调高缓存系数,可以提高缓存效果<br />注:版块设置完毕后请到 基本设置 -> 站点页面缓存设置,调整其缓存时间。',
在下面添加
//----edit
'forums_edit_extend_ffile' => '版块模板文件:',
'forums_edit_extend_ffile_comment' => '填写格式如forum/forumdisplay,请在特殊需要时进行设置,若为空则默认为forumdisplay',
'forums_edit_extend_vfile' => '版块主题模板文件:',
'forums_edit_extend_vfile_comment' => '填写格式如forum/viewthread,请在特殊需要时进行设置,若为空则默认为viewthread',
//----edit
第六步:进入后台更新缓存后进入【论坛/版块/编辑/扩展设置】即可看到相应的设置
设置:版块模板文件、版块主题模板文件
注意:设置模板文件不需要填写此文件的后缀名
例子:模板文件为test.htm则只需填写forum/test即可
写在最后:和手机相关的也可以这样写:
if(defined('IN_MOBILE') && $_G['forum']['ffile']) include template('forum/forumdisplay_other');