by Uğur Çelenk
28. Ağustos 2008 07:38
BlogEngine.NET kullanıcıları, yazılarına(post) yeni bir yorum geldiğini, yorum gönderildiğinde otomatik gelen mailden ya da teker teker yazılara girip yorumları görebiliyorduk ve tüm yorumları görebileceğimiz bir sayfa yoktu. Ama artık var.! Cristiano Fino tarafından "Yorum Yönetimi Eklentisi (Comment Manager Extension)" yayınlandı.
Bu eklenti ile :
- kontrol panelinden yorumların yönetimi : yorumları düzenleme,onaylama ve silme özelliklerini kullanabiliyorsunuz. Administartor yetkisi sahibi yazarlar tüm yorumları yönetebilirken, editörler sadece kendi yazılarına gelen yorumları yönetebiliyor. Yorumlar tarih sırasına göre, her sayfada 10 tane yorum olmak üzere sayfalanıyor.
- yazı(post) üzerinden doğrudan düzenleyebilme özelliği mevcut.
Kurulumu :
Öncelikle Cristiano Fino'nun kendi sitesi üzerinden kurulum için gereken dosyayı indirelim. İndir.!
1. İndirdiğiniz zip dosyasını açınız.
2. Comments.aspx, Comments.aspx.cs, CommentView.ascx ve Web.Config (üzerine yazmayı onaylayın) bu dosyaları /Admin/Pages/ klasörüne koyunuz.
3. Web.Sitemap (üzerine yazmayı onaylayın) dosyasını da blogunuzun rootuna koyunuz.
Eğer ayarları elle yapmak istiyorsanız, yani yukarıdaki gibi Web.Sitemap e Web.Config üzerine yazmak istemiyorsanız, aşağıdaki adımları uygulayabilirsiniz
/Admin/Pages/ klasöründeki Web.Config dosyasını açınız ve ardından <configuration> ... </configuration> düğümü(node) içine alttaki kodu yerleştirin.
<location path="Comments.aspx">
<system.web>
<authorization>
<allow roles="administrators, editors"/>
<deny users="*" />
</authorization>
</system.web>
</location>
Ardından blogunuzun rootunda bulunan Web.Sitemap dosyasnı açınız ve <siteMapNode url="default.aspx" ...> ... </siteMapNode> düğümü içine aşağıdaki düğümü yerleştirin.
<siteMapNode url="~/admin/Pages/Comments.aspx" title="Yorumlar" description="" roles="administrators, editors"/>
Konfigurasyon :
Kurulumu tamamladıktan sonra, artık kontrol panelinde "Yorumlar" adında yeni bir tab eklenmiş olduğunu göreceksiniz.
Yazıların(posts) altında bulunan yorumlarda, doğrudan yorumu düzenlemek için gereken linki sayfada göstermek için aşağıdaki işlemi gerçekleştirebilirsiniz.
Kullandığınız temanın rootunda(mesela themes/standart/) bulunan CommentView.ascx dosyasını açınız ve <%= AdminLinks %> yazan kısmın hemen altına aşağıdaki kodu yapıştırın
<% if (Page.User.Identity.IsAuthenticated) { %>
| <a href="../admin/pages/comments.aspx?id=<%=Comment.Id %>">Yorumu düzenle</a>
<% } %>
(Önemli Not: Yukarıdaki kod eklentiyi yazan kişi tarafından yazılmıştır, bu kodta bir eksiklik/hata farkettim.Bu eksiklik, eğer yazılarınızın linkinde tarih kullanıyorsanız "Yorumlar" yazısının linkin yolu yanlış yeri gösteriyor, bu durumda linkteki "../" yerine sitenizin ismini yazmanız önerilir. Bu eksikliği eklentiyi yazan kişiye de ileteceğim yazımı tamamladıktan hemen sonra.)
Elbette login olduğunuzda bu yorum düzenleme linkini göreceksinizdir.
(GUNCELLEME: Cristiano Fino'ya bu hatayı bildirdikten sonra kodu tekrar güncellediğini bildirdi ve yukarıdaki kod öbeğinin son halini aşağıya ekledim)
<% if (Page.User.Identity.IsAuthenticated) { %>
| <a href="=" mce_href="="<%=Utils.RelativeWebRoot %>admin/pages/comments.aspx?id=<%=Comment.Id %>">Yorum Güncelle</a>
<% } %>
Özelleştirme :
Control panelde listelenen yorumların görünüşünü /Admin/Pages/ klasöründe bulunan CommentView.ascx dosyasını modifiye ederek değiştirebilirsiniz.
Bu eklenti BlogEngine.NET 1.4 versiyonu ile sorunsuz çalışmaktadır.