星哥的博客

  • 首页
  • 系统
  • 虚拟机
  • 网站开发
  • 硬件外设
  • VPS/云主机
  • 心情随笔
wangxingcs
星哥的博客
  1. 首页
  2. 网站开发
  3. Code
  4. 正文

在首页显示论坛所有帖子

2014年8月10日 1368点热度 0人点赞 0条评论

最近研究了下仿小米的论坛模式,看大多数都是使用导读修改,感觉不是很好,显示不完整,自己研究了下,发现使用论坛的关联功能也能实现此功能,而且更加方便。

1、开新版块,编辑版块-扩展设置,关联群组/版块,把其它版本的ID写进去;

2、复制forum.php文件,改为其它名字如123.php,修改

define('APPTYPEID', 2);
define('CURSCRIPT', 'forum');

后面添加

$_GET +=array('mod'=>'forumdisplay','fid'=>128);

3、界面-导航设置-主导航,添加新板块的链接,设置为123.php;

4、修改forumdisplay.htm和其它需要修改的文件,添加判断代码:

<!--{if $_G[fid]=='128'}-->
<!--{else}-->
<!--{/if}-->

如新板块的发帖链接,需要修改为直接弹出板块选择

<!--{if $_G[fid]=='128'}-->
<a class="post_btn" onclick="showWindow('nav', this.href);return false;" href="forum.php?mod=misc&amp;action=nav&amp;special=0&amp;"><img src="$_G['style'][styleimgdir]/pn_post_big.png" alt="发新帖"/></a>
<!--{else}-->
<a href="javascript:;" id="newspecial" onmouseover="$('newspecial').id = 'newspecialtmp';this.id = 'newspecial';showMenu({'ctrlid':this.id})"{if !$_G['forum']['allowspecialonly'] && empty($_G['forum']['picstyle']) && !$_G['forum']['threadsorts']['required']} onclick="showWindow('newthread', 'forum.php?mod=post&action=newthread&fid=$_G[fid]')"{else} onclick="location.href='forum.php?mod=post&action=newthread&fid=$_G[fid]';return false;"{/if} title="{lang send_posts}"><img src="$_G['style'][styleimgdir]/pn_post_big.png" alt="发新帖"/></a>
<!--{/if}-->

还有新板块的路径修改:

<!--{if $_G[fid]=='128'}-->
<a href="./" class="nvhm" title="{lang homepage}">$_G[setting][bbname]</a><em>&raquo;</em><a href="forum.php">论坛</a>
<!--{else}-->
<a href="./" class="nvhm" title="{lang homepage}">$_G[setting][bbname]</a><em>&raquo;</em><a href="forum.php">{$_G[setting][navs][2][navname]}</a>$navigation
<!--{/if}-->

当然,根据不同模版还有其它需要修改地方,按照此方法自行修改即可;

5、解决访问新板块,导航栏的CSS定位却在版块的方法

修改header.htm,找到相应的导航栏代码,如:

<div class="deansnav">
<!--{eval $mnid = getcurrentnav();}-->
<ul>
<!--{loop $_G['setting']['navs'] $nav}-->
<!--{if $nav['available'] && (!$nav['level'] || ($nav['level'] == 1 && $_G['uid']) || ($nav['level'] == 2 && $_G['adminid'] > 0) || ($nav['level'] == 3 && $_G['adminid'] == 1))}--><li {if $mnid == $nav[navid]}class="deancurrent" {/if}$nav[nav]></li><!--{/if}-->
<!--{/loop}-->
</ul>
<!--{hook/global_nav_extra}-->
</div>

如果要彻底修改,可以修改getcurrentnav(),但我为了图方便,直接修改了$mnid的赋值,这块$mnid的值可以在页面源代码里看到;

<div class="deansnav">
<!--{eval $mnid = getcurrentnav();}-->
<!--{if $_G[fid]=='128'}-->
<!--{eval $mnid = 'mn_N60ee'}-->
<!--{/if}-->
<ul>
<!--{loop $_G['setting']['navs'] $nav}-->
<!--{if $nav['available'] && (!$nav['level'] || ($nav['level'] == 1 && $_G['uid']) || ($nav['level'] == 2 && $_G['adminid'] > 0) || ($nav['level'] == 3 && $_G['adminid'] == 1))}--><li {if $mnid == $nav[navid]}class="deancurrent" {/if}$nav[nav]></li><!--{/if}-->
<!--{/loop}-->
</ul>
<!--{hook/global_nav_extra}-->
</div>

基本上修改就结束了,如果对其它样式不满意,也可根据此方法修改模版的其它文件即可。

PS:如果要屏蔽快速发帖中的隐藏论坛,修改post_forumselect.htm文件

if(fid != '') {
s += '<p><a href="javascript:;" ondblclick="locationforums(2, ' + fid + '\)" onclick="switchforums(this, 2, ' + fid + ')"' + ($('fs_subforum_' + fid) ? ' class="pbsb"' : '') + '>' + lis[i].innerHTML + '</a></p>';
}

修改为

if(fid != '' && fid != '128') {
s += '<p><a href="javascript:;" ondblclick="locationforums(2, ' + fid + '\)" onclick="switchforums(this, 2, ' + fid + ')"' + ($('fs_subforum_' + fid) ? ' class="pbsb"' : '') + '>' + lis[i].innerHTML + '</a></p>';
}

标签: 暂无
最后更新:2014年8月11日

wangxingcs

仅记录一些有用的教程,自己的经历!
新浪微博 @wangxingcs
Twitter @wangxingcs(常在)

点赞
< 上一篇
下一篇 >

文章评论

取消回复

wangxingcs

仅记录一些有用的教程,自己的经历!
新浪微博 @wangxingcs
Twitter @wangxingcs(常在)

标签聚合
FineCMS 群晖 POSCMS DSM 手机 PVE CMS 虚拟机
最新 热点 随机
最新 热点 随机
Proxmox VE(PVE)添加硬盘 PVE解决VM is locked问题 Proxmox VE配置更新源 黑群晖显示真实CPU信息 Proxmox VE直通硬盘(全盘映射方式) PVE去除“没有有效订阅”提示 Proxmox VE 6.1/6.2 U盘安装教程 黑群使用SSH修改启动盘SN和MAC的方法 ProxmoxVE添加E1000e网卡(可升级群晖6.2.2) 测试下WordPress手机端APP WIN10下MarkdownPad HTML渲染错误(This view has crashed) 的解决办法 + 注册码 INF 中的服务安装段落无效问题解决(手机MTP驱动黄色感叹号) finecms高级版 使用自定义字段访问文章 微赞自定义二维码功能增强 Nginx SSL性能优化参数
Proxmox VE(PVE)添加硬盘Proxmox VE配置更新源PVE解决VM is locked问题
TP-link 841N v5版本无线路由刷Openwrt第三方固件 CentOS常用磁盘命令 nginx进程数和worker_cpu_affinity参数设置 目前兼容性最好的CSS3圆角写法 AMH5下给NGINX开启SPDY支持 mod_expires模块安装 IE6-8下img标签对两端对齐代码的不兼容 FineCMS v1轻量版Ngxin伪静态设置方法 CentOs下 PHP安装imap和exif等模块 Linux流量监控工具 - iftop bw_moudle模块设置apache限速 F660破解时遇到 当前操作无效 的解决方法 INF 中的服务安装段落无效问题解决(手机MTP驱动黄色感叹号) Linux压缩命令tar详解 【转】利用Google API让wordpress每篇文章快速生成QR二维码

COPYRIGHT © 2020 星哥的博客. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

陕ICP备13007295号-1