DataPager Kontrolünün Linklerini URL Rewrite Modülüne Uyarlamak
Eğer URL Rewrite Modülü kullanan bir siteniz varsa ve sayfanızda listview ile birlikte datapager kullanıyorsanız, Url’lerinizin siz şu şekilde olmasını isterken
www.rizasirman.com/kategori-adi/2
Url’niz aşağıdaki gibi çirkin ve kullanıcı dostu olmayan bir hal alacaktır
www.rizasirman.com/kategori-adi/?page=2
Bununla birlikte;
www.rizasirman.com/kategori-adi
ile
www.rizasirman.com/kategori-adi/?page=1
aynı içeriğe sahip olacağı için sitenizde mükerrer içerik oluşacaktır ve bu SEO ilkelerine ters bir durumdur ve arama motorundaki rankınızı kötü etkiler. Bu durumdan kurtulmak için URL-Rewrite modülünden redirect ve rewrite kurallarınızı oluşturduktan sonra Listview’unuza bağlı DataPager’ınızı aşağıdaki şekilde override edebilirsiniz.
protected void DataPager1_PreRender(object sender, EventArgs e)
{
foreach (Control control in DataPager1.Controls)
{
foreach (Control c in control.Controls)
{
if (c is HyperLink)
{
HyperLink currentLink = (HyperLink)c;
currentLink.NavigateUrl = currentLink.NavigateUrl.Replace(".aspx?", "/");
currentLink.NavigateUrl = currentLink.NavigateUrl.Replace("kategori=", "/");
currentLink.NavigateUrl = currentLink.NavigateUrl.Replace("&sayfa=1", "/");
currentLink.NavigateUrl = currentLink.NavigateUrl.Replace("&sayfa=", "/");
}
}
}
}