これを読んだ友人が助けてくれるでしょう。これらのコードは初めて投稿されます。以下に記述するときは、できる限り簡潔かつ明確にするよう努めました。いわゆるコードがたくさんありますが、サイトマップ生成コードはディレクトリ ファイル アドレスを生成するだけで、動的アドレスは生成しません。 2,000 件の記事がある記事 Web サイトの場合、対応する記事データ テーブルを変更して、すべてのディレクトリ ファイルだけでなく、動的 2,000 個のアドレスも生成できます。言うまでもなく、生成速度は非常に高速です。 。
次のコードを sitemap.asp ファイルとして保存し、メモしたいくつかの場所を変更し、その他は変更しないでください。それが適切かどうかは、使用して初めてわかります。
次のようにコードをコピーします。
<!--#include file=conn.asp-->
<%
セッション(カウント)=0
strURL = http:// & request.servervariables(SERVER_NAME) & _
left(request.servervariables(SCRIPT_NAME),len(request.servervariables(SCRIPT_NAME))-len(/sitemap.asp))
薄暗いフールキャット
フールキャット = フールキャット + <?xml バージョン=1.0 エンコーディング=UTF-8?>
Foolcat = Foolcat + <!-- http://www.xxx.com & return_RFC822_Date(now,GMT) & --> によって生成された Google サイト マップ ファイル
フールキャット = フールキャット + <urlset xmlns=http://www.google.com/schemas/sitemap/0.84>
フールキャット = フールキャット + <url>
フールキャット = フールキャット + <loc> & strURL & /</loc>
フールキャット = フールキャット + </url>
セッション(数)=セッション(数)+1
set all_fs = Server.CreateObject(Scripting.FileSystemObject)
set all_folder = all_fs.GetFolder(server.MapPath(/))
すべてのファイル = すべてのフォルダー.ファイルを設定します
all_file 内の各ファイルについて
フールキャット = フールキャット + <url>
Foolcat = Foolcat + <loc> & strURL & / & File.Name & </loc>
フールキャット = フールキャット + </url>
セッション(数)=セッション(数)+1
次
ディムjs、sql
set js =server.CreateObject(ADODB.RecordSet)
sql = select * from [生成するテーブル名] order by id asc //生成したいデータテーブルの名前を変更します
set js = conn.execute (SQL)
js.eofまでやる
id=&js(id) //IDフィールドに変更します
フールキャット = フールキャット + <url>
Foolcat = Foolcat + <loc> & strURL & /xxx.asp?Id= & id & </loc> //ファイル名とIDに変更します
フールキャット = フールキャット + </url>
セッション(数)=セッション(数)+1
js.movenext
ループ
js.close
js = 何も設定しない
フールキャット = フールキャット + </urlset>
フールキャット = + フールキャット +
フールキャット = & フールキャット &
フォルダーパス = Server.MapPath(/)
fso = Server.CreateObject(Scripting.FileSystemObject) を設定します。
fout = fso.CreateTextFile(FolderPath/sitemap.xml) を設定します。
fout.writeLine フールキャット
fout.close
fout = 何も設定しない
接続閉じる
conn = 何も設定しない
関数 return_RFC822_Date(byVal myDate, byVal TimeZone)
薄暗い myDay、myDays、myMonth、myyear
myHours、myMinutes、mySeconds を暗くする
myDate = CDate(myDate)
myDay = EnWeekDayName(myDate)
myDays = Right(00 & Day(myDate),2)
myMonth = EnMonthName(myDate)
myyear = 年(myDate)
myHours = Right(00 & 時間(myDate),2)
myMinutes = Right(00 & Minute(myDate),2)
mySeconds = Right(00 & Second(myDate),2)
return_RFC822_Date = myDay, & _
マイデイズ & _
私の月&_
私の年&_
私の時間:& _
私の分:& _
mySeconds & _
タイムゾーン(&)
終了機能
関数 EnWeekDayName(InputDate)
暗い結果
ケースを選択 WeekDay(InputDate,1)
ケース 1:結果=日
ケース 2:結果 = 月
ケース 3:結果=火
ケース 4:結果 = 水
ケース 5:結果=木
ケース 6: 結果 = 金
ケース 7:結果=土
エンドセレクト
EnWeekDayName = 結果
終了機能
関数 EnMonthName(InputDate)
暗い結果
ケースの月(入力日)を選択してください
ケース 1:結果 = 1 月
ケース 2:結果 = 2 月
ケース 3: 結果 = 3 月
ケース 4:結果 = 4 月
ケース 5:結果 = 5 月
ケース 6:結果 = 6 月
ケース 7:結果 = 7 月
ケース 8:結果 = 8 月
ケース 9:結果 = 9 月
ケース 10:結果 = 10 月
ケース 11:結果 = 11 月
ケース 12:結果 = 12 月
エンドセレクト
EnMonthName = 結果
終了機能
%>