DomBlog 是由 Jake Howlett 开发的,他是 Codestore.net 的一名开发人员和经营者。DomBlog 数据库是捐赠性的:如果您使用它用于生产目的,Howlett 就要求您向他喜欢的慈善机构捐赠一点钱。Codestore.net 站点上最新的版本是 v1.6,这个版本已经有一段时间没有更新了。Howlett 说原因可能是使用 DomBlog 的人没有过去多了:“当它达到能够工作的状态之后,我就不管它了。这个模板的想法 —— 以及我所开发的其他东西 —— 是让人们可以从中学习。然而,大部分人都不希望自己做点什么,只是希望所有的特性都会不断进行更新。”
结果是 DomBlog 并没有很多最新的特性,例如 trackback。但是它依然有很多让人心动的功能。DomBlog 是这 3 个模板中最简单的一个,也是 Donimo 开发人员可以进行定制的最为简单的一个。尽管它没有响铃和汽笛声的功能,但是它仍然提供基本的功能和最好的一个优点:blog 的所有功能 —— 从创建 blog 条目到管理内容 —— 都可以在 Web 浏览器中执行,这是 Domino Blog 和 BlogSphere 中所不具有的。
设置并运行 DomBlog 非常简单。下面是设置 DomBlog 并对其进行定制的一些技巧,这可以节省您一些时间。
您可以从 Codestore.net 上下载压缩文件。压缩文件中只有一个文件 domblog.nsf。
要从解压后的 domblog.nsf 文件(也可以是这个文件的一个拷贝)创建一个数据库,首先在 Notes 客户机或 Domino Designer 中打开这个文件,并正确设置 ACL:为自己添加 Manager 访问权限和 Administrator 角色,并给自己赋予删除文档的权限。然后保存这个文件。
现在您可以在 Domino 服务器上新建一个 domblog.nsf 的拷贝,并在 Web 浏览器中打开这个文件。默认的视图显示了 blog 的条目:
图 1. DomBlog
您可以看到这个数据库在一个非常干净的设计中呈现了基本 blog 应用程序的元素。所张贴的 blog 都是按照日期逆序进行排列的。点击标题或每个贴子底部的 Read/Add 链接,可以在一个新窗口中打开这个帖子,以及相关的评论,其中还包括了一个编辑器,用来创建并提交评论。
导航面板中显示了一个 logo 图形,一个搜索框,一个日历(其中当日的 blog 条目是高亮显示的),以及一个按月进行归档的链接。下面是 blogroll,到 About 文档和 FAQ 的链接,最后是一个 RSS 文件的图标,这是使用每个新的 blog 条目自动创建的。
您或者任何访问者在默认的视图中都可以做的一件事情是:阅读 blog 条目,并张贴评论。要对站点进行管理,您需要打开另外一个视图:
http://servername/domblog.nsf/postsadmin?OpenView
(您可能会想修改应用程序中的视图名,因为它可以作为管理员密码使用。)
这会打开一个已经张贴的对 blog 进行响应的所有文档的视图,并为到导航面板的可用操作添加一个框:
图 2. DomBlog 导航面板
选择一个评论,可用操作就会发生变化:
图 3. 导航面板
您可以通过 Web 在这个界面中对数据库的所有内容进行管理(包括上传图像资源)—— 这是 DomBlog 的最出众的功能之一。
DomBlog 文件是一个数据库,而不是一个模板;Howlett 已经在其中包含了几个样例 blog,并张贴了一些评论和一个 blogroll 作为例子,还有几个文档用作系统设置。您可能会有一种欲望要在 Notes 客户机的 All Documents 视图中打开这个数据库,并将这些文档删除。请不要这样做。
对这个数据库进行安全清理的方法是通过管理界面一次一个文档地删除这些所张贴的 blog 和评论。
在对 DomBlog 为您自己的 blog 进行定制的第一个步骤是对在 Application Settings 列表中的所有项目进行编辑。点击操作栏中的 App Settings,就会看到下面的清单:
图 4. Application Settings
点击一个条目的链接,打开这个条目,然后按照自己的需要进行编辑。有些条目,例如 About 和 FAQ,都是在 blog 中使用的;另外一些条目,例如 BlogImage 和 BlogDescription,都是在 RSS 中使用的,应用程序会自动创建它们。
DomBlog 是在子表单上进行构建的,因此这个应用程序的外观看起来是可以进行定制的,但是它的功能却没什么好定制的。下面是一个基于 DomBlog 的 blog,其外观有一些小的变化:
图 5. Time 的 Telescope
导航列是由两个子表单创建的:pt_html_div-menu_start 和 pt_html_div-menu_end。您可以在 Domino Designer 中对这两个子表单进行编辑。
我们首先要替换左上角的 logo。它是由一个名为 logo.gif 的图像资源创建的。我们可以简单地删除 DomBlog logo,并将其替换为一个我们自己名字的图像资源。搜索框和按钮的宽度是 190 像素,这会设置 logo 的宽度。如果您希望进行更多的变化,可以在 pt_html_div-menu_start 子表单中完成。
我们使用 DomBlog logo 来在一个图形程序中创建一个 “Powered by DomBlog” 图标,然后将其作为一个图像资源添加到数据库中。我们将这个新图标添加到菜单列的末尾,这可以通过编辑 pt_html_div-menu_end 子表单实现。我们可以在 Web 上隐藏包含 “Designed by Jake Howlett of CodeStore” 证书行的一段话,而是添加一个图像标记来显示 “Powered by DomBlog” 图标,并对其关联一个链接,指向一个新页面 codestore:
<p><a href=codestore?ReadForm><img src=powered-by-domblog.gif border=0></a></p>
我们将 codestore 页面作为一个新的 Application Settings 页面来创建。这是一个多步骤的过程,可以按照数据库中 About 文档的工作方式来使用:DomBlog 数据库中的 About 文档包括域值、内容和子表单。它从一个名为 About 的 Application Setting 文档中获取自己的内容。为了创建一个对 Codestore.net 的致谢页面,我们创建了一个 General 类型的新 Application Settings 文档,将其命名为 codestore,并输入文本 “This blog is published using DomBlog, a free blogging template for the IBM Lotus Domino server available from Codestore.net”。
然后对 About 表单制作一个拷贝,并将其重命名为 codestore,然后编辑它的计算文本域,这样名为 codestore 的 Application Settings 文档就可以用来在显示时提供表单的内容了。
DomBlog 在 Web 浏览器中管理结构化的简单 blog 提供了一个有效的界面。这种简单性的负面影响是对用户有一些要求。下面是一个已打开进行编辑的 blog 条目:
图 6. 编辑模式中 的 Time 的 Telescope
这种控制提供了很好的灵活性:您可以设置 blog 条目是立即发布,还是在将来的某个日期发布,抑或是保存为草稿。(最后一个 Save 按钮让您可以编辑已经发表的条目,而不用修改它的发表日期。)
这也有一些局限。Blog 条目必须使用嵌入式 HTML 标记进行格式化,这样即使最普通的正文 blog 也需要一些 HTML 方面的知识,在包含图像时需要了解 Domino 处理资源的方式方面的知识。例如,Time 的 Telescope 条目中的眼睛的 URL 是:
<img src="rsrc/icon/$file/eyecon.gif" align="left" />
DomBlog 是命令驱动的,您可能会希望编写一个需要记住的命令列表,例如基于视图名 rsrs 来显示操作框和图像标记表示的视图名 postsadmin(或者任何其他您称呼这个视图的东西)。
- 您可以参阅本文在 developerWorks 全球站点上的 英文原文 。
-
Domino blogging: Blogs and blogging
-
Domino blogging: Domino Blog
-
Domino blogging: BlogSphere
-
Domino blogging: Basic vocabulary
- 阅读 developerWorks blogs。