Merhaba arkadaslar,
ASP.NET ile olusturdugumuz projelerde, facebook,twitter vs. sosyal medyalarda paylasim yaptigimizda, paylasimda görünmesini istedigimiz resim,yazi, ekleyen kisi vs. gibi özellikleri sayfa bazli degistirmek isteyebiliriz. Örnegin bir blog, e-ticaret, ürün tanitimi vs gibi bir proje yapiyorsak, her sayfa için yaptigimiz paylasimda farkli özellikler görünmelidir.
Eger seo etiketleri ile alakali bilginiz yoksa buraya tiklayarak ilgili makalemizi okumanizi tavsiye ederim.
Normalde,
Page.Title="Sayfa Basligi"; Page.MetaDescription="Meta Açiklamasi"; Page.MetaKeywords="Meta Etiketleri";
ile Sayfamizin Basligi,Meta Etiketleri,Meta Açiklamasi gibi özellikleri degistirebiliyorduk. Fakat Open Graph eklemek/degistirmek istedigimizde ne yazik ki yukaridaki kullanim geçerli olmuyor. Head bölümü arasinda yer alan meta tag'ler için herhangi bir düzenleme ya da ekleme yapmak istedigimizde C# Library olan using.System.Web.UI.HtmlControls; kütüphanesinin içerisinde bulunan HtmlMeta Class'indan bir instance alarak isleme basliyoruz. Sonrasinda ise eklemek istedigimiz tag'in property degerini ve content'ini veriyoruz. Burada property(key), content(value) olarak düsünebiliriz. Hemen örnek kodlari asagida yazalim:
HtmlMeta tag = new HtmlMeta(); // Yukarida belirttigim gibi HtmlMeta sinifinin bir nesnesini türettik.(Instance)
tag.Attributes.Add("property", "og:title");
tag.Content = "MyTitle"; // Verdigimiz deger string, ancak Escape karakterlerine müsade ediyor.
Page.Header.Controls.Add(tag);// Az önce türettigimiz HtmlMeta türünden tag isimli nesnemizi, Sayfamizin Header bölümüne ekliyoruz.
Yukaridaki kodlari metot olarak Page Load'da çagirabiliriz ya da direkt olarak Page Load içerisinde yazabiliriz. Projemizi çalistiralim ve kaynak kodlara bakalim.
Belirttigimiz og:title property'si MyTitle content'i ile karsimizda :) Hepinize bol kod'lu günler diliyorum, anlamadiginiz yerlerde yorum yazmaniz yeterli arkadaslar...
Yazılım Geliştirici & Yazılım Uzmanı