`
arest
  • 浏览: 21645 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
社区版块
存档分类
最新评论

phpcms栏目中显示discuz论坛帖子并过滤掉删除的文章

    博客分类:
  • web
阅读更多

    通常在phpcms与discuz论坛系统集成开发站点的时候经常会有这种需求,即将论坛中的帖子显示在phpcms首页的栏目中,参见示例网站:(http://www.myjindy.net)可查看效果。

    在网上最多的教程都会讲使用下面的get标签来显示:

{pc:get  sql="SELECT * FROM pre_forum_thread  ORDER BY 
    dateline>=UNIX_TIMESTAMP()-604800 DESC" 
    num="10" cache="3600" return="data"}
{loop $data $key $val}
<li><a title="{$r[subject]}" href="http://www.jindy.myjindy.net/bbs/forum.php?
        mod=viewthread&tid={$val[tid]}&extra=page%3D1">{$val[subject]}</a></li>
{/loop}
{/pc}

    上面的标签确实可以将最新的论坛发帖取到并显示。

    但是有的时候会经常遇到一些广告贴,在论坛管理中删除后还是会显示在phpcms的栏目中,点击链接进去查看会发现帖子已删除。

    这样的用户体验很不好。

    解决方法:

    在 pre_forum thread 中查询帖子的时候 加入过滤条件 :

displayorder>=0

    displayorder字段保存了当前帖子的几种状态如下:

3 ——3级置顶
2 ——2级置顶
1 ——1级置顶
0 ——正常
-1——回收站
-2——审核中
-3——审核忽略
-4——草稿

    所以用displayorder可以过滤取出可以正常显示的帖子。

    即使用如下的sql进行查询:

SELECT * FROM pre_forum_thread where displayorder>=0  ORDER BY 
    dateline>=UNIX_TIMESTAMP()-604800 DESC

    最终的get标签如下:

{pc:get  sql="SELECT * FROM pre_forum_thread where displayorder>=0 
     ORDER BY dateline>=UNIX_TIMESTAMP()-604800 DESC" num="10" 
     cache="3600" return="data"}
{loop $data $key $val}
<li><a title="{$r[subject]}" href="http://www.jindy.myjindy.net/bbs/forum.php?
    mod=viewthread&tid={$val[tid]}&extra=page%3D1">{$val[subject]}</a></li>
{/loop}
{/pc}

--欢迎访问: http://www.3body.tk/iblog

0
0
分享到:
评论

相关推荐

    phpcmsv9投稿统计

    这个系统可以帮助管理员追踪并汇总各类投稿数据,包括栏目文章的数量、管理员发布的文章数以及会员提交的文章数。下面将详细阐述phpcms V9的核心特性、投稿统计的重要性以及实现这一功能的技术细节。 phpcms V9是一...

    phpcms文章系统

    **phpcms文章系统详解** `phpcms`是一个基于PHP语言开发的内容管理系统,广泛应用于搭建各类门户网站,因其utf-8版本支持多语言特性,使得它在构建国际化网站时更具优势。本篇文章将深入探讨phpcms文章系统的功能、...

    phpcms v9栏目列表调用每一篇文章内容方法

    在Phpcms V9中,默认情况下,栏目列表模板只调用文章的标题、链接以及发布时间等基本信息,若要调用文章的详细内容,需要对模板代码进行一定的修改和数据库查询操作。 首先,需要了解Phpcms V9的模板标签系统。在...

    PHPCMS DISCUZ ECSHOP整合步骤

    ### PHPCMS、DISCUZ与ECSHOP的整合步骤详解 #### 一、概述 随着互联网技术的发展,各种网站系统之间的整合变得越来越重要。本文将详细介绍如何将PHPCMS、DISCUZ与ECSHOP这三种系统进行整合,以实现更好的用户体验和...

    phpcms标签调用总结

    在PHPCMS V9中,我们可以使用`{$CAT}`标签来显示栏目名称与拼音。例如,要显示当前栏目的名称与拼音,可以使用以下代码: ```php {$CAT[catname]}与{$CAT[letter]} ``` 这将显示当前栏目的名称与拼音。 父栏目名称...

    后台文章批量添加至地区插件 for Phpcms 2008.rar

    用户可以通过阅读这份文档来了解如何将插件整合到他们的Phpcms系统中,并有效地利用其批量添加文章至地区的功能。另一个文件名 "后台文章批量添加至地区" 可能是实际的插件脚本,包含处理文章与地区关联的代码逻辑。...

    Phpcms_2007sp6_文章发表模块

    Phpcms_2007sp6_文章发表模块

    PHPCMS V9 定时发布文章的方法

    ### PHPCMS V9 定时发布文章的方法详解 #### 一、背景介绍 随着互联网技术的发展,内容管理系统(CMS)成为了网站管理不可或缺的一部分。PHPCMS V9是一款基于PHP语言开发的内容管理系统,广泛应用于各类网站的信息...

    PHPCMS标签的详细说明

    - 例如,如果创建了一个名为`{tag_文章1}`的新标签,可以将其直接复制到模板文件中,并更新相关页面生成静态文件即可看到显示效果。 #### 修改标签 在PHPCMS系统中,修改标签是一种非常实用的功能,可以帮助用户...

    phpcms数据导入导出模块

    【phpcms数据导入导出模块】是针对phpcms V9内容管理系统的一个功能扩展,主要用于方便网站管理员进行数据的批量处理。这个模块的核心在于提供了一种高效、灵活的方式来管理和迁移数据,尤其是在大型网站或者需要...

    phpcms v9发布文章不显示用户名的解决方法

    当在phpcms v9系统中发布或更新一篇文章后,在前台静态页面展示时,有时会发现文章下方的“更新用户”字段为空或者没有显示出实际更新该文章的用户名称。这种现象通常是在文章更新后出现,而新发布的文章则较少遇到...

    PHPCMS V9 数据结构

    2. **内容模型**:PHPCMS V9支持自定义内容模型,这允许用户根据需求创建不同类型的栏目,如文章、图片、下载等。每个模型都对应一个或多个数据库表,存储相关的内容数据。 3. **表结构**:常见的PHPCMS V9核心表...

    phpcms自己整理的一些心得

    本文将根据标题“phpcms自己整理的一些心得”以及描述中的关键信息,深入探讨phpcms的模块开发流程、常用变量的使用、注意事项以及分页的修改方法。 首先,我们来看phpcms的模块开发流程。模块开发是phpcms自定义...

    PHPCMS中默认模板的详细图形说明

    - PHPCMS支持模板变量替换,如文章标题、作者、发布时间等,可以在模板文件中以特定格式定义,然后在后台设置中替换。 4. **模板继承与布局** - 默认模板采用模板继承机制,子模板可以继承父模板的部分设计,方便...

    phpcms(phpcms系统)

    **phpcms系统详解** phpcms是一款基于PHP语言和MySQL数据库的开源内容管理系统,因其功能强大、易用性好,被广泛应用于网站建设和管理。在深入理解phpcms之前,我们需要了解其核心特性、主要功能以及使用场景。 **...

    phpcms上传图片插件.rar

    由于谷歌浏览器宣布不再支持flash上传的方式,而phpcms默认的正是flash上传,我们只能改为H5上传,此版本使用webuploader.js,感觉这个挺强大,自动识别是否支持h5,如果不支持自动启用flash上传,兼容低版本的...

    PHPCMS后台模板 美化PHPCMS后台

    在实际应用中,用户或开发者需要将这个压缩包解压,并将内容覆盖到PHPCMS的相应目录下。在覆盖之前,最好备份原有的文件,以防万一出现问题可以及时恢复。同时,为了确保兼容性和安全性,应测试模板在不同浏览器和...

    phpcms模板标签总结

    在phpcms中,我们可以使用内训分类来显示分类信息。例如,我们可以使用 `{loop subcat($catid) $c}` 来循环显示子分类信息,并使用 `{if $c['child']}` 来判断是否有子分类,然后使用 `{loop $child $catc}` 来循环...

Global site tag (gtag.js) - Google Analytics