網頁

ASP.NET控制Meta Tags

你或許使用過ASP.NET的Page.Title來修改網頁的標題,但你有沒有試過使用ASP.NET來修改Meta,你或許會說,那還不簡單,使用Page.Meta就好了,嗯!你打打看。

其實沒有那怎難,在ASP.NET中,除了控制項,我們還可以把一般的HTML轉換為HTML控制項,在ASP.NET中每一個HTML控制項都有對應的類別,例如,在Visual Studio中打「Dim meta As New html」你就可以看到所以html對應的類別,如HtmlAnchor對應的就是<a>。

但如果我們想在程式碼中操控這些HTML,那就先必須把這些HTML轉換為ASP.NET的控制項,轉換的過程異常簡單,只需要在HTML Tags裡加上「runat="server"」屬性馬上就能將HTML轉換為ASP.NET的控制項。就我們的需求,我想要操控Meta所以我幫Meta加上兩個屬性:

<meta id="metaName" runat="server" />

這樣就馬上讓meta成為ASP.NET的控制項,而id是為了讓我們可以在程式碼中進行設定。

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        metaName.Attributes("name") = "author"
        metaName.Attributes("Content") = "Bruce"
    End Sub

這樣讓meta可進行程式碼操作後,就可以進行許多事,例如我們的動態頁面裡的meta可以與資料庫互動,動態產生meta,來進行簡易meta的SEO動作。

一樣的原理,可以用於其他HTML中,重點只有在「runat="server"」,把HTML轉換為HTML控制項,成為控制項後,ASP.NET才能進行程式碼的操作。

1 則留言:

  1. 在.NET Framework 4針對SEO有新的屬性,可以不用在使用上途方法。

    回覆刪除

感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。