Domino Blog 是由 Steve Castledine 开发的,它以一个模板(NTF 文件)的形式对外发布。您可以免费下载并使用这个模板,但是 Castledine 对自己的责任和对该软件的商业使用进行了一些限制。(请参阅他的 Web 站点 dominoblog.com。)
Castledine 将自己的应用程序描述为一个 “Domino Blog Toolkit”,而不仅仅是自产的市场骗术。blog 应用程序的设计和功能需要具有良好的可定制性和可扩展性。您可以通过创建并安装一组 HTML 模板和样式表来设置一个可视化的外观,并包含一些定制标记将应用程序的数据与其表示信息组合在一起。
Domino Blog 的最新版本是 3.0.0,是在 2005 年 11 月发布的。
Domino Blog 从 Web 上是只读的。所有文档的创建和管理都需要从 Notes 客户机中进行。这意味着使用 Domino Blog 的 blogger 可以完全离线进行工作。
在 DomBlog 应用程序是在子表单上创建的情况中,Domino Blog 是由代理驱动的。利用定制标记和模板,这样可以将应用程序的图形表示层和处理分隔开来。下面将介绍如何使用 Domino Blog。
由于 Domino Blog 是作为一个模板发布的,因此它很容易设置。从 dominoblog.com 上下载压缩文件,将其展开并保存到 Notes 的 data 目录中。从这里,您可以使用 Domino 服务器上的模板来创建新的数据库。
要从 Web 上打开 blog 应用程序,您必须首先编辑 ACL,并使用一个可以在服务器上运行代理的 ID 对应用程序的代理进行签名。
您必须将 Anonymous 角色添加到 ACL 中,并为其授予 Author 权限。将自己的角色设置为 Manager。
在 Domino Designer 中,确保您正在使用一个可以运行服务器代理的 ID,然后打开 Agents 菜单,选择所有显示的代理,并点击 Sign 按钮。这将重新保存所有的代理,并为 Web 用户启用这个应用程序。
在 Notes 中,数据库会打开内容创建/管理界面:
图 1. Domino Blog
您应该首先打开 Site Configuration 文档并编辑几个设置:站点的 URL、标题、描述和元标记信息。Castledine 建议您还要按照 dominoblog.com Web 站点上的 Quick Installation Guide 来进行几处修改。
blog 在阅读程序中看起来与在 Web 上完全不同(URL 非常简单: http://Domino server name/database name.nsf):
图 2. Web 中的 Domino Blog
默认的菜单设计包括按月份和主题进行的归档清单,固定个数的最近条目,blogroll,RSS 内容链接,以及证书面板。默认配置不过是一个起点。Castledine 的 Web 站点上包括了在 Domino Blog 上运行的 blog 的清单。其中一些 blog,例如 Ed Brill's personal blog,会对这些默认值稍加修改。另外一些 blog,例如 jonvon 的 blog 和 Libby Ingrassia 则都是经过了非常多的定制。下面是一个为相同的 Time 的 Telescope blog(使用 DomBlog 创建的)而定制的 Domino Blog:
图 3. Time 的 Telescope
定制标记和模板使得这个过程非常简单。(在 http://www.dominoblog.com/DominoBlog.nsf/dx/dxtags.htm 上您可以看到定制标记的清单。)例如,移动搜索框就是将标记 <$DXSearchForm$> 从这个站点模板上删除并添加到另外一个模板上的过程。
模板和模板块的工作方式都与 Notes 中的子表单类似。在 Domino Blog 中有几个提前构建的模板,这在 Administration 菜单上可以看到:
图 4. Administration 菜单
您按照自己的需要设计多个模板,然后在站点的配置文档中将其中一个设置为活动状态。模板块使您可以设计并重用界面中更小的部分,这可以通过组合定制标记和动态 HTML 来实现。例如,下面就是一个内容清单块的代码,它包含了几个 Domino Blog 的内嵌定制标记:
<h2><$DXMonthName$> <$DXDay$><$DXDayDesc$>, <$DXYear$></h2> <div class="blogbody"> <h3 class="title"><$DXSubject$></h3> <div class="posted">Posted at <$DXTime$><$DXCategory$>| <$DXInlineCommentLink$> (<$DXCommentCount$>) | <$DXPermLink$></div> <p><$DXItemContent$></p> </div> <br /><br /> |
要将一个模板设置为活动的,您可以在站点配置文件中选择这个模板。要将一个模板块设置为活动的,您需要在一个标记中对其进行命名,并在一个模板中包含这个模板块:
<$DXTemplateBlock Name="Content">
定制标记和模板使得 Domino Blog 非常灵活,足以用来满足各种应用程序的要求,例如照片 blog。您还可以在数据库中使用定制标记来创建静态 Web 页面。当然,要想获得更好的效果,您就需要了解更多的 DHTML 和 JavaScript 方面的知识,但是 Domino Blog 的功能强大之处在于它可以允许我们将多种工具放在一起工作(如果我们知道如何使它们一起工作)。
Domino Blog 对于与业务有关的应用程序的一个附加值在于它用来跟踪统计信息的工具,它们可以显示哪些人使用了应用程序中的哪些部分。
最新版本的 Domino Blog 添加了更多的定制标记。这些标记扩展了软件的灵活性,尤其是在类别和图像分类方面更是如此。它还添加了一些特性来帮助 blog 的所有者对评论进行管理,并可以阻塞评论广告,后者是 blog 所面临的一个日益严重的问题。2.2.1e 版本让所有者可以根据 IP 地址来阻塞到达的评论信息,并可以构建一个禁止的地址列表,这可以直接输入,也可以选中一个已有的评论然后再选择 “Remove Comments/Ban IP” 来实现。这包括用来检测和阻塞由机器人所创建的评论广告。它还包括了一个可配置的评论验证特性,可以将所有到达的评论都置于 draft 模式,直到 blog 的所有人查看并将其发布到 blog 上之后为止。这不但可以帮助防止广告和不好的评论,而且让所有人可以强制推行站点策略,这需要正确判断评论者的身份和评论的相关程度。
文档虽然算不上是什么大的特点,但是却也不仅仅是一个小特点。采用最新版本的 Domino Blog,Castledine 已经在自己的 dominoblog.com 站点上搜集了很多文档,这些文档介绍了如何启用并定制应用程序中的很多高级特性,并给出了一些例子。Domino Blog 的可视化表示可以无限制地进行扩展 —— Castldine 承诺要公布用来实现这种灵活性的模板设计。还有更多的文档来介绍应用程序的体系架构,并介绍了最有效的修改方法。
- 您可以参阅本文在 developerWorks 全球站点上的 英文原文 。
-
Domino blogging: Blogs and blogging
-
Domino blogging: DomBlog
-
Domino blogging: BlogSphere
-
Domino blogging: Basic vocabulary
- 阅读 developerWorks blogs。