下沙论坛

标题: 用标签替换的方法生成静态网页 [打印本页]

作者: 秋风舞落叶    时间: 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
这个模板我们保存在数据库表中  temptable1 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) mEnd 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