Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

论坛公告修改指南

[复制链接]
elevensky 发表于 2011-9-30 11:10:51 | 显示全部楼层 |阅读模式
论坛前台公告的处理程序是在,./source/forum/forum_index.php中处理的,代码如下:
  1.          $announcements = get_index_announcements();
复制代码
如果,没有分区id和页面缓存的情况下,就重新读取一遍论坛公告。

获取函数为get_index_announcements();
  1. function get_index_announcements() {
  2.         global $_G;
  3.         $announcements = '';
  4.         if($_G['cache']['announcements']) {
  5.                 $readapmids = !empty($_G['cookie']['readapmid']) ? explode('D', $_G['cookie']['readapmid']) : array();
  6.                 foreach($_G['cache']['announcements'] as $announcement) {
  7.                         if(!$announcement['endtime'] || $announcement['endtime'] > TIMESTAMP && (empty($announcement['groups']) || in_array($_G['member']['groupid'], $announcement['groups']))) {
  8.                                 if(empty($announcement['type'])) {
  9.                                         $announcements .= '<li><span><a href="forum.php?mod=announcement&id='.$announcement['id'].'" target="_blank" class="xi2">'.$announcement['subject'].
  10.                                                 '</a></span><em>('.dgmdate($announcement['starttime'], 'd').')</em></li>';
  11.                                 } elseif($announcement['type'] == 1) {
  12.                                         $announcements .= '<li><span><a href="'.$announcement['message'].'" target="_blank" class="xi2">'.$announcement['subject'].
  13.                                                 '</a></span><em>('.dgmdate($announcement['starttime'], 'd').')</em></li>';
  14.                                 }
  15.                         }
  16.                 }
  17.         }
  18.         return $announcements;
  19. }
复制代码
这段代码即使论坛公告的获取和处理代码,这里通过对公告时间和用户组权限的判断取出缓存当中的公告,并对不同类型的公告做了处理
1.      文字公告没有type值
2.      网址链接的type值等于1,做了链接处理!
我们如果需要修改论坛公告展示代码的展示样式可以通过修改这段代码完成,默认的是封装在<li>标签中的。
前台的展示代码在文件./template/deault/forum/discus.htm
  1. <!--{if empty($gid) && $announcements}-->
  2.         <div class="y">
  3.                 <div id="an">
  4.                         <dl class="cl">
  5.                                 <dt class="z xw1">{lang announcements}: </dt>
  6.                                 <dd>
  7.                                         <div id="anc"><ul id="ancl">$announcements</ul></div>
  8.                                 </dd>
  9.                         </dl>
  10.                 </div>
  11.                 <script type="text/javascript">announcement();</script>
  12.         </div>
  13.         <!--{/if}-->
复制代码
注意公告上下轮换的js效果是<scripttype="text/javascript">announcement();</script>
这段js控制的。如果你想对他的js动态展示效果做些处理的话到这个文件./static/js/forum.js中修改即可!



评分

2

查看全部评分

eisdl 发表于 2011-9-30 16:13:14 | 显示全部楼层
本帖最后由 eisdl 于 2011-9-30 16:14 编辑

前些天做的一个模板刚好涉及到公告调用·
回复

使用道具 举报

maomaodegege 发表于 2011-10-7 09:02:41 | 显示全部楼层
回复

使用道具 举报

qichengzx 发表于 2011-10-8 10:32:13 | 显示全部楼层
前排学习一下
回复

使用道具 举报

lmprinter 发表于 2011-10-21 00:35:24 | 显示全部楼层
刚好有问题请教下:
https://discuz.dismall.com/forum.php?mod=announcement
http://www.discuzr.net/forum.php?mod=announcement&m=201110
http://www.discuzr.net/forum.php?mod=announcement&id=4
这些公告页面的标题都是和论坛首页一样的,造成大量重复页面的收录,这个算不算BUG?
  1.                  Discuz! 官方站-PHP 开源论坛 -  Powered by Discuz!
复制代码
公告页面的标题怎么修改呢?比如修改成这样:
  1. 网站公告—Discuz! 官方站-PHP 开源论坛 -  Powered by Discuz!
复制代码



回复

使用道具 举报

路遥梦 发表于 2012-1-21 11:52:00 | 显示全部楼层
现在暂时还用不到公告,用到了看看到底是怎么回事
回复

使用道具 举报

狼狐! 发表于 2012-1-24 20:08:35 | 显示全部楼层
看不懂。我对代码不在行?
回复

使用道具 举报

dxzhujob 发表于 2012-2-12 19:03:45 | 显示全部楼层
这个很好....
回复

使用道具 举报

爱的心跳 发表于 2012-2-21 21:02:08 | 显示全部楼层
恩,支持楼主啊。
回复

使用道具 举报

smellc520 发表于 2012-2-21 21:14:46 | 显示全部楼层


http://jeth.hk/plugin.php?id=zywx:propagate

IOS Andriod Symbian v3/v5

想為你的論壇設置iphone 程式/andriod 程式的朋友 可以與我聯繫!!!! admin@jeth.hk
繁化utf-8版  原版本簡體gbk 簡體utf8  版權歸APPCAN 官方網站:http://appcan.cn
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-6-26 15:12 , Processed in 0.108197 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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