ASP.NET 4.0 ile Dinamik Title Description ve Keyword
Merhaba arkadaşlar;
Bir web developer olarak herhangi bir firmada çalışıyorsanız dahi zaman zaman freelance olarak bazı projeler gelir size. Gelen projeler içerisinde ciddi kurumsal yapıya sahip firmalar olacağı gibi bireysel taleplerinde olması elbetteki kuvvetle muhtemeldir.
İşte proje talebi ile gelen bu müşteriler içerisinde talep ettiği projeye dair bir bilgi birikimi olanlar olduğu gibi herhangi bir fikri olmayanlarda elbetteki var. Hatta çat kapı karşınıza çıkıp "hadi bana bi web sitesi yap" diyenlerin sayısı sanırım her developerın hayatında azımsanamayacak kadar çok olsa gerek. Hatta dahada vahimi büyük bir kesimin internetin sadece Google den ibaret olduğunu daha doğrusu Google'nin internet olduğunu zanneden bir toplumuz. Ama sevindirici bir taraf ise artık Google harici Bing, Yahoo gibi arama motorlarıda ülkemizde ciddi yer edinmeye başladı. Öyleki web sitesini görüntülemek için tarayıcısının adres çubuğuna kendi web sitesinin domainini yazmak yerine Google'den gelen yüzlercesini tanıyorum. Kendi web sitesinin Google tarafından açıldığını zanneden çok ciddi yoğunlukta insanlar var hepimizin çevresinde. Elbette burada bahsettiğim bilinçli kullanıcılar değil tabiki :) Hoş sırf elinizde bilgisayar var diye yanınıza gelip "ya bizim plazmanın kumandası bozulmuş bir bakıversen hayrına, sen anlarısın" diyen insaların yanında internet ve arama motoru ayrımını yapamayanların eli öpülür sanırım :)
Neyse konuyu çok daha fazla dağıtmayayım.
Bir web developer isenize arama motorlarının önemi geliştirdiğiniz projelerde küçümsenemeyecek kadar büyüktür. Arama motorlarının ise sizin geliştirdiğiniz projelere değer vermesine ilişkin belirli kriterleri var. Hangi arama motoru olursa olsun sayfalarınıza ait "Title, Description ve Keyword" kısımları çok ama çok büyük bir öneme sahiptirler.
ASP.NET 'in 4.0 öncesi sürümlerinde de bunları elbette bir şekilde dinamik olarak ayarlayabiliyorduk. Fakat bu ayarlamaları yaparken biraz taklalar atmamız ve uğraşmamız gerekebiliyordu :)
ASP.NET 4.0 ile birlikte gelen yeni özelliklerden olan; Page sınıfına dahil edilen iki yeni özellik ile bu işlemleri çok kolay bir şekilde yapabilmekteyiz.
ASP.NET 4.0 öncesindede Page.Title diye bir özelliğimiz vardı ve sayfalarımızın Title kısmını çok rahat bir şekilde ayarlamaktaydır. ASP.NET 4.0 da ise bu sınıfa Page.MetaKeywords ve Page.MetaDescription da eklenerek SEO işlemlerimizde ASP.NET sayfalarınının kodlanmasını tadından geçilmez bir hale getirmiş Microsoft.
Bildiğiniz gibi daha önceki süreçlerde sayfalarımız Title, Description ve Keywords gibi özelliklerini aşağıdaki gibi <head></head> tagları arasına ekliyorduk ve buralarda yer alacak verileri dinamik olarak çekebilmek için daha öncede belirttiğim gibi bi kaç işlem yapmamız gerekmekteydi.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Sayfamızın title yazısı burada yer almakta</title>
<meta name="keywords" content="Buraya sayfa ile ilgili anahtar kelimeler gelecek" />
<meta name="description" content="Buraya sayfanın açıklaması gelecek" />
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
ASP.NET 4.0 ile gelen bu yeni özellikler sayesinde artık işlemleri dinamik olarak gerçekleştirebilmek için yaptığımız ekstra işlemlere ihtiyaç duymamaktayız. Tek yapmamız gereken en basit olarak sayfanın yüklenme anında ( Page_Load ) bu yeni özellikleri kullanmak yada herhangi bir method ile verileri çekip yine sayfanın Page_Load'ında bu methodları çağırmak olacaktır.
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Page.Title = "Sayfamızın title yazısı burada yer almakta";
Page.MetaKeywords = "Buraya sayfa ile ilgili anahtar kelimeler gelecek";
Page.MetaDescription = "Buraya sayfanın açıklaması gelecek";
}
}
Açıkçası işlemlerimizi hızlandıran oldukça güzel bir özellik olduğunu düşünüyorum.
Bir sonraki makalemizde görüşünceye dek kalın sağlıcaklar.
Takip Ediyorum
Faydalı Projeler
Yorumlar
Sizde Yorumda Bulunun
Konuya dair fikir ve sorularınızı paylaşın