下沙论坛
标题:
用标签替换的方法生成静态网页
[打印本页]
作者:
秋风舞落叶
时间:
2009-4-17 08:54
标题:
用标签替换的方法生成静态网页
大家都知道HTML静态网页更容易被搜索引擎收录索引,动态生成HTML网页,也可使网站的网页数量增多,搜索引擎收录的数量也可能多,再加下提高网页的质量也意未着什么呢?我想大家也知道。
* h; q4 C2 v$ R
为了这个,我决定了改变之前网站建设,网页设计的方法,经过多翻的研究及思考,对多种网页动态生成的方法,我比较喜欢用标签替换的方法成生网页。
4 C! t: J; k V8 h' x
标签替换法:这是我个人理解的定义,不知道别人怎么叫它的,呵呵!
) n. M3 r0 a, g% Z2 V
% |4 i" g9 e% r9 }1 c: h
标签替换法,就是在设计好了的网页模板中,放入自已设定的标签,然后用你需要显示出来的东东替换它。如
& S1 p0 t7 \5 z6 N
x1 k a/ `4 Q
模板文件1
+ @/ s0 `/ M- p- U2 g0 v8 U
+ u* G/ F* y! `/ J0 j0 A
这个模板我们保存在数据库表中 temptable
1 F) d/ S8 R9 s) T! `9 \* Y
6 o4 I% r9 a6 j4 ^& x
<html>
6 _" T' `5 q! E4 q$ w* z2 l
<head>
. Y' z, u+ \9 o
<title>{$SiteName} </title>
9 T/ t T/ O9 K7 z, m/ I3 R" }5 J7 C
</head>
+ l8 b5 I8 N5 S4 o& N9 z
<body>
3 v8 j8 V# l8 f8 ]
{$Arc_List$}
/ P' r2 [; Q4 B% j& |+ J, ?) z
</body>
& r+ h! c' a: o
<html>
$ c; C: a K* \ k: k& p1 }* c0 c
9 H+ n6 G9 r4 J9 o4 w j; w. A6 ~5 f" {
在以上模板中我放入了两个标签{$SiteName}网站名称和{$Arc_List$}文章列表,再来看下面的代码
. |" p/ n- u/ p& k, E
' i( H0 g( ?! d9 j' z, m! r; V
<%
* M! x" h/ A/ J, d* K% I, e
dim rs,SiteName,Arc_List,fso,myFile,FilePath,html
: e( @- p1 \! ]# _ t+ @9 F9 K
SiteName="我的第一个动态生成的HTML网页"
* H: _1 @" |9 _7 H7 M1 a+ N( F/ V
FilePath = Server.MapPath("/html/index.html")
3 E0 f; ^/ a$ |1 q8 U H
set rs=server.createobject("adodb.recordset")
1 C" j+ C" G8 h
rs.open"select [temp] from temptable,conn,1,1
- A8 f3 c/ [! W7 \ ]5 }# V/ l
html = rs("temp") '读取网页模板
3 P( l* I% P2 l9 M! A6 Q& P& v
rs.close
! I# c: N9 P/ g& W/ Q% A) H e6 f
! Y2 V9 y% a# k, ~- j
html = replace(html, "{$SiteName}" , SiteName) '用自定义的 SiteName 替换{$SiteName}标签
1 |- K# j M: v/ H5 ?7 `3 G
html = html & replace(html, "{$Arc_List$} " , get_ArcList()) '用自定义的get_ArcList()函数替换{$Arc_List$}标签
4 w9 {) F$ u+ `+ p
set rs=nothing
2 e" ~. C4 b# G
conn.close
3 c! F2 O; q$ M4 e$ v/ O3 X$ B
set conn=nothing
: A( t9 a ^, c: o! s+ f; @3 _" p
1 g S$ S o, G
set fso=CreateObject("***ing.FileSystemObject") '创建文件系统对象
$ b$ a/ i2 @% i' q6 J# i8 D
Set MyFile = fso.CreateTextFile(FilePath,True) '创建文件
5 h* s( L2 \" [& @5 {( ?# q
MyFile.WriteLine(html) '把htm代码写入文件
/ a0 t2 v" r) P: c4 h* v
MyFile.close '关闭文件
, G! G7 w, @! J p/ P, v
Set MyFile = nothing '释放文件对象
' `, q Z) d3 F3 _
set fso = nothing '释放系统文件对象
. b9 J D; t- W q8 S1 H
response.write "<*** language='java***'>window.alert('文件生成成功了');</***>"
( I8 Q% ?' U/ V3 ^. I* }* N) D
response.end()
$ S6 F0 A1 [8 z- n) W$ V
2 s9 ^0 q+ c( P
+ k( d6 g o. p4 q( U
Function get_ArcList()
* g. ]- [1 e" a& e+ N" a- L8 X( {
dim str,str1
& V' I8 N2 ?2 Z) m
str1=""
/ t& h1 ?& t8 w' j5 H; F
str = "<ul>{list}</ul>"
" V" z. c c2 b! g8 b
rs.open"select Title,url from Arc"
2 d% n7 \; D$ A. y! q
while not rs.eof
8 ~. f! k+ A# d& s/ ]' h
str1 = str1 & "<li><a href="&rs("url")&">"&rs("Title")&"</a></li>"
3 h2 K6 c6 \3 B
rs.movenext
$ K& ^" c, ]1 T
wend
$ x# q1 @/ w7 q' H3 y) j+ Z
rs.close
6 v6 B9 }+ u# P# `
str = replace(str, "{list}", Str1)
0 H! f- e0 \- K7 t; d% e
get_ArcList = str
2 \& a2 {4 U m0 I% e9 S) ~$ t" g
( {! O2 ]( {% x% A: x n9 x
%>
& c$ j5 h T8 t1 A F8 o) m
End Function
3 w# W6 j+ r7 A' M2 C# h
' I% g$ w0 k8 i8 V% {" O
以上的方法是不是很简单,现在很多CMS都是采用这种方法生成静态网页的,这种方法使用比较灵活,只要你用心去设计一下你的系统,以后做一个网站,只要设计模板就可以了。。。
欢迎光临 下沙论坛 (http://bbs.xiasha.cn/)
Powered by Discuz! X3.3