`
wangyi878750
  • 浏览: 188411 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

OpenCms 中实现文章分类功能

阅读更多
    以前在 OpenCms 中实现文章分类的功能,一直都是在 VFS 中建立对应的目录来实现的.这样方便实现,也是很多人习惯使用的方法.这里就不在介绍了.

    很早就听说 OpenCms7 中有了内容的分类功能, 也很早就看到 马宣的个人网站 使用这个功能做了自己基于 OpenCms 的 BLOG ,可惜一直没有时间好好研究一下.今天看看 OpenCms 自己在 TemplateTwo 中的实现,追踪了一下代码.大致明白了这个用法.

    在 OpenCms7 中的 "/system/" 目录下增加了一个 "categories" 目录,这个目录就是存放整个站点的内容分类结构的.
可以建立类似这样的目录:
做为分类目录.

    然后在写文章的时候,可以指定资源的 Assign Categories ,对资源进行分类.譬如:
 
   在这里,可以同时指定属于几个分类,就象我在 sohu 的 Blog 上写文章可以同时指定最多5个关键词一样.这样就可以以不同的关键词做为参数读取内容列表了.

    在 OpenCms7 中也增加了这样一个 collector —— CmsCategoryResourceCollector,用它来实现按照分类得到资源列表.这个类的 List allKeyValuePairFiltered(CmsObject cms, String param) 方法就可以返回期望的列表.

    具体在使用的时候还是比较容易的.只需要和以前一样使用
<cms:contentload> 标签就可以了.所不同的是,在这里需要指定的除了 collector的属性需要是 "allKeyValuePairFiltered" 之外,还需要按照指定的分类,就是在 param 中增加 categoryTypes=[category1,category2,...]来指明.当然,你还可以同时指明需要找的是那个目录下面的、是否包括子目录、列表排序方法是按照发布时间还是分类、排序是正序还是倒序、列表最大显示多少项目……

    当然了,可能的话,可以象下面一样开发自己的配置文件,这样使用起来就更方便了。



    =================================
    个人觉得,这样做分类功能要比纯粹使用目录来分类好的多。不知道 maxuan 是不是这样实现的呢?


我的相关日志:

2007-03-23 | [转]OpenCms for MySql 安装图解
2007-03-23 | [转][图文]OpenCms VFS plugin for Eclipse 安装与使用
2008-04-12 | <cms:param>标签的使用
2008-04-11 | <cms:img>标签的用法举例说明
2008-04-10 | 再谈<cms:contentaccess>标签的使用
2008-04-09 | 浅谈<cms:contentaccess>标签的使用
2008-04-08 | OpenCms 7 Development 5月份即将出版
2008-04-07 | OpenCms中操作外部数据库的方法之二
2008-04-06 | OpenCms中操作外部数据库的方法之一
2008-04-05 | 有趣的OpenCms后台登录界面
2008-04-04 | 我的OpenCms在线演示站点失效


分享到:
评论

相关推荐

    OpenCms 内容类型模块

    内容类型在 OpenCms 中扮演着至关重要的角色,它们定义了数据的结构和行为。通过创建自定义的内容类型,用户可以根据项目需求定制化内容的展现形式和管理方式。例如,可以创建新闻文章类型、产品目录类型或图片库...

    opencms9 java api

    1. **内容模型**:OpenCMS 的内容模型允许开发者定义网站上不同类型的内容,如文章、图片、新闻等。通过Java API,开发者可以创建、更新和删除内容类型,并为每种类型设置属性和字段。 2. **资源管理**:OpenCMS ...

    OpenCMS教程

    - **新闻门户**:用于发布最新资讯,支持文章分类、搜索等功能。 **1.7 小结** 本章主要介绍了CMS的概念、发展历程以及OpenCMS的基本情况。接下来我们将详细介绍如何安装和使用OpenCMS。 #### 二、安装OpenCMS **...

    Building Web Sites with OpenCms

    - **内容创建**:利用OpenCms提供的内容编辑器,创建各种类型的内容,如文章、图片、视频等。 - **工作流管理**:设置工作流,对内容进行审核、批准后发布至网站前端。 - **多语言版本**:为不同语言的访客提供相应...

    opencms文档

    6. **集成其他系统**:OpenCMS可以与CRM、ERP等企业系统集成,实现数据共享。 六、入门指南 《OpenCMS内容管理入门指南.doc》可能是介绍如何安装、配置和使用OpenCMS的基础教程。这份文档可能会涵盖以下内容: 1. *...

    OpenCMS_7_开发

    首先,书中介绍了网站设计的重要性,以"Deep Thoughts"博客网站为例,详细列出了该网站的功能需求,如按日期倒序排列的博客文章、按主题分类、内容检索、用户评论和RSS订阅等。这一步骤强调了在开发前明确网站功能和...

    opencms 计数模块

    在这个"opencms 计数模块"中,我们关注的核心是系统如何跟踪并处理用户与内容的交互,如文章的点击数和文档的下载量。这些数据对于评估内容的受欢迎程度和网站性能至关重要。 首先,我们要理解计数模块的基本功能。...

    opencms资料

    ### OpenCMS基础知识与应用 ...通过以上介绍,可以看出OpenCMS不仅具备强大的内容管理能力,还能通过扩展插件和自定义代码实现更多高级功能。对于初学者而言,掌握OpenCMS的基础操作和核心概念是非常重要的第一步。

    OpenCMS内容管理入门指南(300页中文).pdf

    - **安装OpenCms**: 将OpenCms部署到Tomcat中,初始化数据库。 - **安全设置**: 配置防火墙、更改默认密码等安全措施。 ##### 2.3 配置OpenCMS默认站点 - **过程**: - **安装Apache**: 作为Web服务器。 - **...

    Managing.And.Customizing.OpenCMS.6

    - **内容创建**:介绍如何使用 OpenCms 创建不同类型的内容,如文章、图片和视频等。 - **内容编辑与审核**:讨论内容编辑工具和工作流机制,以及如何进行内容审核。 - **版本控制**:讲解版本控制系统,帮助用户...

    OpenCms Article Management Module-开源

    此外,"其他信息"的提及暗示模块可能还支持嵌入其他媒体类型,如视频、音频或文档,以实现多媒体内容的整合。 "开源软件"标签表明OpenCms Article Management Module 遵循开源许可,这意味着源代码对公众开放,允许...

    opencms.zip_Java编程_Java_

    开发者可以自定义Servlet来实现特定的业务逻辑,例如用户登录、文章发布等。 三、XML技术 XML(Extensible Markup Language)是一种用于标记数据的语言,它提供了一种结构化的方式来存储和交换数据。OpenCMS使用XML...

Global site tag (gtag.js) - Google Analytics