หน้าที่ของแผนผังเว็บไซต์คือการอนุญาตให้เครื่องมือค้นหารวมหน้าเว็บต่างๆ ของเว็บไซต์ได้อย่างรวดเร็วที่สุด
ที่นี่เราต้องเข้าใจหลักการพื้นฐานก่อน วิธีการรวบรวมข้อมูลของเครื่องมือค้นหา อินเทอร์เน็ตทั้งหมดเปรียบเสมือน "เน็ต" แบบไขว้กัน แต่ละโหนดของเครือข่ายคือหน้าเว็บแต่ละหน้า และหน้าเว็บแต่ละหน้าเชื่อมต่อถึงกันผ่าน URL สไปเดอร์สามารถเริ่มต้นจากหน้าเว็บหนึ่งและรวบรวมข้อมูลไปยังหน้าเว็บอื่นผ่าน URL บนหน้าเว็บ จากนั้นจึงรวบรวมข้อมูลไปยังหน้าเว็บเพิ่มเติมผ่าน URL บนหน้าเว็บอื่น... และอื่นๆ แต่หากเป็นเว็บไซต์ที่เพิ่งเปิดตัว อาจไม่มี URL อื่นที่ชี้ไปยังเว็บไซต์ดังกล่าว ดังนั้นจึงไม่มีการ "รวบรวมข้อมูล" (รวมอยู่ด้วย) เพื่อแก้ไขปัญหานี้ เว็บไซต์ใหม่สามารถส่ง URL ไปยังเครื่องมือค้นหาและสมัครให้สไปเดอร์รวบรวมข้อมูลได้ (URL แอปพลิเคชันของ Google :) แต่โดยทั่วไปจะส่งเฉพาะ URL ของหน้าแรกเท่านั้นเมื่อสมัคร
เพื่อให้ URL ทั้งหมด (โดยเฉพาะที่สร้างแบบไดนามิก) สามารถดึงข้อมูลได้อย่างรวดเร็วและง่ายดายโดยสไปเดอร์ เราจำเป็นต้องจัดเตรียมโครงสร้างเว็บไซต์ที่ครอบคลุม ครบถ้วน ชัดเจน และอัปเดตแผนผังเว็บไซต์อย่างทันท่วงที
และเพื่อจัดการกับไฟล์ robots.txt ของเนื้อหาที่ซ้ำกัน เราใช้ไฟล์ .ashx เพื่อสร้างแผนผังไซต์ในรูปแบบ xml ตาม sitemaps.org หลังจากสร้างแผนผังเว็บไซต์แล้ว เราสามารถส่งไปยังเครื่องมือค้นหาเช่น Google ได้ บทความจำนวนมากยืนยันว่าการส่งแผนผังเว็บไซต์จะช่วยเพิ่มความเร็วและความลึกของการรวมเว็บไซต์ได้อย่างมาก วิธีการทำ SEO อื่นๆ เกือบทั้งหมดอาจพิสูจน์ได้ยาก ไม่มีประสิทธิผล หรือแม้แต่ก่อให้เกิดผลข้างเคียง ยกเว้นการส่งแผนผังเว็บไซต์!
Linq to XML มอบประสบการณ์การทำงานที่เกือบจะสมบูรณ์แบบให้กับเรา
<%@ WebHandler Language="C#" Class="เว็บไซต์" %>
ใช้ระบบ;
ใช้ System.Web;
ใช้ System.Xml;
ใช้ System.Xml.Linq;
ใช้ System.Linq;
เว็บไซต์คลาสสาธารณะ : IHttpHandler {
ProcessRequest โมฆะสาธารณะ (บริบท HttpContext) {
context.Response.ContentType = "ข้อความ/xml";
//ข้อมูลการประกาศของไฟล์ ค่าใช่ของพารามิเตอร์ตัวที่สามแบบสแตนด์อโลนบ่งชี้ว่าเอกสาร XML นี้มีอยู่ในตัวเองและไม่ต้องอาศัย DTD ที่กำหนดจากภายนอก
ประกาศ XDeclaration = XDeclaration ใหม่ ("1.0", "UTF-8", "ใช่");
context.Response.Write (ประกาศ);
//เนมสเปซของไฟล์ XML
XNamespace ns = " http://www.google.com/schemas/sitemap/0.84 ";
XElement siteMap = XElement ใหม่ (ns + "urlset");
สตริง fixedUrl = " http://www.freeflying.com/article ";
สตริง wholUrl = string.Empty;
//วนรอบข้อมูลและแปลงเป็นโหนด XML
foreach (รายการ var ใน Articles.GetArticles())
-
XElement url = XElement ใหม่ ("url");
WholeUrl = string.Format("{0}?id={1}&catelog={2}",fixedUrl,item.ID,item.Catelog);
XElement loc = XElement ใหม่ ("loc", wholeUrl);
XElement Lastmod = XElement ใหม่ ("lastmod", item.LastMod.AddDays(-23).ToShortDateString());
XElement changefreq = new XElement("changefreq", item.Frequency);
ลำดับความสำคัญของ XElement = XElement ใหม่ ("ลำดับความสำคัญ", item.Weight);
url.Add(loc, Lastmod, changefreq, ลำดับความสำคัญ);
siteMap.Add(url);
-
//ในที่สุดก็ส่งออกไฟล์ xml ทั้งหมด
บริบทการตอบสนองเขียน (แผนผังเว็บไซต์);
-
บูลสาธารณะ IsReusable {
รับ {
กลับเท็จ;
-
-
-
เทคโนโลยี XML ก็จะใช้ใน RSS ด้วย
<%@ ภาษา WebHandler = "C #" Class = "rss" %>
ใช้ระบบ;
ใช้ System.Web;
ใช้ System.Xml;
ใช้ System.Xml.Linq;
RSS คลาสสาธารณะ: IHttpHandler {
ProcessRequest โมฆะสาธารณะ (บริบท HttpContext) {
context.Response.ContentType = "ข้อความ/xml";
context.Response.Write("<?xml version="1.0" encoding="UTF-8" ?>");
XElement rssFeed = XElement ใหม่ ("rss", XAttribute ใหม่ ("version", "2.0"));
สตริง fixedUrl = " http://www.freeflying.com/article ";
สตริง wholUrl = string.Empty;
ช่อง XElement = XElement ใหม่ ("ช่อง",
ใหม่ XElement("ชื่อ", "การบินอิสระ"),
ใหม่ XElement("ลิงก์", URL คงที่),
ใหม่ XElement("คำอธิบาย", "เว็บไซต์สำหรับความฝันที่บินได้อย่างอิสระ"),
ใหม่ XElement("pubDate",DateTime.Now.ToString())
-
foreach (บทความ var ใน Articles.GetArticles())
-
รายการ XElement = XElement ใหม่ ("รายการ");
ชื่อ XElement = ใหม่ XElement("title", article.Title);
WholeUrl = string.Format("{0}?id={1}&catelog={2}", fixedUrl, article.ID, article.Catelog);
ลิงก์ XElement = XElement ใหม่ ("ลิงก์", URL ทั้งหมด);
คำอธิบาย XElement = XElement ใหม่ ("คำอธิบาย", article.Description);
XElement pubDate = XElement ใหม่ ("pubDate", article.LastMod.ToString());
item.Add(ชื่อ,ลิงค์,คำอธิบาย,pubDate);
ช่อง.เพิ่ม(รายการ);
-
rssFeed.Add(ช่อง);
บริบทการตอบสนองเขียน (rssFeed);
-
บูลสาธารณะ IsReusable {
รับ {
กลับเท็จ;
-
-
-
ข้อมูลจำลอง
ใช้ระบบ;
ใช้ System.Data;
โดยใช้ระบบการกำหนดค่า;
ใช้ System.Linq;
ใช้ System.Web;
โดยใช้ System.Web.Security;
โดยใช้ System.Web.UI;
ใช้ System.Web.UI.HtmlControls;
ใช้ System.Web.UI.WebControls;
ใช้ System.Web.UI.WebControls.WebParts;
ใช้ System.Xml.Linq;
ใช้ System.Web.UI.MobileControls;
ใช้ System.Collections.Generic;
/// <สรุป>
/// คำอธิบายโดยย่อสำหรับบทความ
/// </สรุป>
ชั้นเรียนสาธารณะบทความ
-
บทความสาธารณะ()
-
-
// สิ่งที่ต้องทำ: เพิ่มตรรกะคอนสตรัคเตอร์ที่นี่
-
-
รายการคงที่สาธารณะ <บทความ> GetArticles()
-
ส่งคืนรายการใหม่<บทความ>(){
บทความใหม่ (234, "บล็อก", DateTime.Now.AddDays(-23), Freq.none, 0.8, "asp.net seo", "บทความเกี่ยวกับ SEO ใน asp.net"),
บทความใหม่ (267, "blog", DateTime.Now.AddDays(-245), Freq.daily, 0.6, "ado.net pro", "เกี่ยวกับการใช้ชุดข้อมูล"),
บทความใหม่(653, "news", DateTime.Now.AddDays(-45), Freq.daily, 1,"CLR via C#", "สมุดบันทึกเกี่ยวกับหนังสือเล่มนี้")
-
-
-
บทความชั้นเรียนสาธารณะ
-
ID สาธารณะ;
แคตตาล็อกสตริงสาธารณะ;
วันที่สาธารณะ LastMod;
น้ำหนักสองเท่าสาธารณะ;
ความถี่ความถี่สาธารณะ;
ชื่อสตริงสาธารณะ;
คำอธิบายสตริงสาธารณะ;
บทความสาธารณะ (int id, catelog สตริง, DateTime LastMod, ความถี่ความถี่, น้ำหนักสองเท่า, ชื่อสตริง, คำอธิบายสตริง)
-
ไอดี = ไอดี;
แคตตาล็อก = แคตตาล็อก;
LastMod = LastMod;
น้ำหนัก = น้ำหนัก;
ความถี่ = ความถี่;
ชื่อเรื่อง = ชื่อเรื่อง;
คำอธิบาย = คำอธิบาย;
-
-
ความถี่แจงนับสาธารณะ
-
ไม่มี = 1,
รายวัน = 2,
รายสัปดาห์ = 3,
-
ผู้แต่ง: ลิงก์ต้นฉบับของ Free Fly