动易swCMS6.5网站由ASP生成HTML静态页的技术分析
提动易swCMS6.5网站提供了ASP生成HTML的功能仅限于以下页面的使用:
网站首页以及各频道首页,栏目页,专题页,内容页的静态页生成
至于公告页,投票结果页,友情链接页,用户中心页等页面均未提供生成静态页的功能
我们可以通过对其他页面生成静态页的技术分析的来学习这个知识点,
通过学习相信我们可以完善网站其他页面的静态页生成功能
所有生成静态页的操作都在后台进行
网站首页的静态页生成由后台页Admin_CreateSiteIndex.asp调用两个过程来完成
Call GetHTML_SiteIndex '返回strHTML,即网站首页的html内容
Call WriteToFile(InstallDir & FileName_SiteIndex, strHTML) ‘保存成静态页到指定的目录
过程GetHTML_SiteIndex()在《皮肤与代码分离技术的原理》已做过简单介绍,
位于后台页调用的<!--#include file="../Include/PowerEasy.SiteIndex.asp"-->文件中
过程WriteToFile()才是生成静态页的核心代码
位于后台页调用的<!--#include file="../Include/PowerEasy.FSO.asp"-->文件中
作 用:写入相应的内容到指定的文件
参 数:WriteToFileName ---- 写入文件的文件名
WriteToFileContent ---- 写入文件的内容
该过程包含两个子函数如下:
Function WriteToFile_FSO(WriteToFileName, WriteToFileContent) '以字符串的形式写入文件
Function WriteToFile_ADO(WriteToFileName, WriteToFileContent) '以文件流的形式写入文件
由过程WriteToFile()根据文件内容的形式判断决定选择哪个自函数来完成文件的生成
由于是将模板的HTML内容保存成静态网页
所以选择的肯定由子函数WriteToFile_FSO()来完成静态页的生成
而子函数WriteToFile_ADO()则用于保存文章中包含的远程图片文件
因为远程图片是以文件流的形式复制到文章频道的上传目录中的
过程WriteToFile()及其子函数WriteToFile_FSO()