Cố gắng sử dụng: Đầu tiên tạo ra lớp BasePage như thế này:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Text.RegularExpressions;
namespace MMSoftware.TheMMSoft.UI
{
public class BasePage : System.Web.UI.Page
{
private string _canonical;
// Constructor
public BasePage()
{
Init += new EventHandler(BasePage_Init);
}
// Whenever a page that uses this base class is initialized
// add link canonical if available
void BasePage_Init(object sender, EventArgs e)
{
if (!String.IsNullOrEmpty(Link_Canonical))
{
HtmlLink link = new HtmlLink();
link.Href = Link_Canonical;
link.Attributes.Add(HtmlTextWriterAttribute.Rel.ToString().ToLower(), "canonical");
link.Attributes.Add(HtmlTextWriterAttribute.Type.ToString().ToLower(), "");
link.Attributes.Add("media", "");
Header.Controls.Add(link);
}
}
/// <summary>
/// Gets or sets the Link Canonical tag for the page
/// </summary>
public string Link_Canonical
{
get
{
return _canonical;
}
set
{
_canonical = value;
}
}
}
}
Giây tạo các trang aspx của bạn mà kế thừa từ lớp cơ sở như thế này:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : MMSoftware.TheMMSoft.UI.BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
bước cuối:
<%@ Page Title=""
Language="C#"
MasterPageFile="~/design/MasterPage.master"
AutoEventWireup="true"
CodeFile="Default.aspx.cs"
Inherits="_Default"
CodeFileBaseClass="MMSoftware.TheMMSoft.UI.BasePage"
Link_Canonical="http://yourCanonicalUrl/"
%>
Hãy nhớ thêm vào C: \ Program Files \ Microsoft Vi sual Studio 9.0 \ Common7 \ Packages \ schemas \ html \ page_directives.xsd thuộc tính:
<xsd:attribute name="Link_Canonical" vs:nonfilterable="true" />
trong phần complexType
<a href="http://www.dowebpage.com">Michele - MMSoftware </a>
Đây là những gì tôi đã làm, tôi đặt liên kết của bạn trong thẻ tiêu đề MasterPage của tôi. Nhưng sau đó từ trang bình thường, mã của bạn không hoạt động. Nó không chọn thuộc tính kinh điển. – Etienne
Xem câu trả lời của Danrichardson (http://stackoverflow.com/questions/1398821/adding-the-canonical-tag-to-my-page-for-seo-through-code-behind/1399522#1399522) để truy cập trang cái kiểm soát từ trang. – Richard