Most of the time, I open a web browser window and search for new themes and extensions for Blogengine. After getting results, I do open relevant sites in new tabs. Usually, one browser window consists of fifty! tabs or more before reading all of them. The problem is, most of you guys have the same fav icon for your blogengine powered blog; “the wrench”.
It is not a big deal, but it makes you unique in my tabs. Here is how you can change it easily.
- Open up your site.master file in your current theme folder .
- Change blogengine.ico with your favourite icon in the HEAD section.
<head runat="server" profile="http://gmpg.org/xfn/11">
<link rel="stylesheet" href="style.css" type="text/css" />
<link rel="shortcut icon" href="~/pics/ruby.ico" type="image/x-icon"/>
</head>
In case you dont have an icon yet, you can search from http://iconfinder.net

Murat Duman.
Blogengine kullanıcıları ve en son kaynak kodu derlemeyi tercih eden bir çok geliştirici, son düzenlemeleri ve testleri yapmak için bilgisayarlarında Visual Studio kullanıyorlar. Notepad de kullanan vardır tabii ki tercih sizin. Fakat bunları IIS altında ya da ASP.NET Development Server ile çalıştırmak istediğimizde açılan sayfada blog yazılarındaki resimler ve bazı sayfa kontrolleri çalışmayabiliyordu. Bu sorun da çoğu zaman AbsoluteWebRoot ve RelativeWebRoot ayrımından kaynaklanıyor. Fakat biz bu ayrımı şimdi irdelemek yerine sorunumuzu çözmeye odaklanalım.
Yedeğini aldığım blogum Visual Studio ile açtığımda Properties penceresinde aşağıdaki bilgiler yer alıyor.

Virtual Path alanını sadece "/" kalacak şekilde siliyorum

http://muratduman.net altında çalışır halde bulunan siteyi localhost'de test etmek için aşağıdaki şekilde çalıştırıyorum. F5'i de deneyebilirsiniz.

Aşağıdaki resimde de görüldüğü gibi artık ASP.NET Development Server, Virtual Path "/" (root) olacak şekilde çalışıyor.

Port bilgisi sizde farklı olabilir, alınmanıza üzülmenize gerek yok. Değiştirin, sıkılınca başka bir limana geçin. her limanda bir uygulama :)
Uzun zamandır, BlogEngine kullananlar IFRAME, EMBED, OBJECT taglerini kullanırken sorun yaşıyorlardı. Yönetim Paneli'ndeki Yazı Ekle kısmından ya da Windows Live Writer kullanarak eklenen video, iframe vb içerikli sayfalar güzel güzel çalışırken, içerikte değişiklik ya da düzenleme yapılmak istendiğinde bilinmeyen bir güç tarafından kayboluyordu. Bu konuda Alp Çoker ilgili bağlantıda şöyle belirtmişti: "Ayrıca tiny_mce editörü embed veya object( ses, video , Java appletleri , resimler , Flash animasyonları , ActiveX, PDF gibi) html kodlarını çalıştırmanıza izin vermiyor."
BlogEngine 1.4.5 ve altındaki sürümlerde kullanılan Tiny MCE editörü varsayılan olarak bu kodları çalıştırmanıza izin vermiyor. Bunu aşmak için türlü taklalar atmamıza gerek yok.
Admin klasörü altındaki tinyMCE.ascx dosyasını açıyoruz. Aşağıdaki kodlar 1.5 üzeri sürüme aittir. Fakat işleyiş açısından bir fark bulunmamaktadır.
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="tinyMCE.ascx.cs" Inherits="admin_tinyMCE" %>
<%@ Import Namespace="BlogEngine.Core" %>
<script type="text/javascript" src="<%=Utils.RelativeWebRoot %>editors/tiny_mce3/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init({
// General options
mode: "exact",
elements : "<%=txtContent.ClientID %>",
theme: "advanced",
plugins : "inlinepopups,fullscreen,contextmenu,emotions,table,iespell,advlink",
convert_urls: false,
// Theme options
theme_advanced_buttons1:
"fullscreen,code,|,cut,copy,paste,|,undo,redo,|,bold,italic,underline,strikethrough,|,justifyleft,justifyce
nter,justifyright,justifyfull,|,bullist,numlist,outdent,indent,|,iespell,link,unlink,sub,sup,removeformat,c
leanup,charmap,emotions,|,formatselect,fontselect,fontsizeselect",
theme_advanced_buttons2: "",
theme_advanced_toolbar_location: "top",
theme_advanced_toolbar_align: "left",
theme_advanced_statusbar_location: "bottom",
theme_advanced_resizing: true,
tab_focus : ":prev,:next"
});
</script>
<asp:TextBox runat="Server" ID="txtContent" CssClass="post" Width="100%" Height="250px"
TextMode="MultiLine" />
Yapmamız gereken theme_advanced_resizing satırının hemen altına aşağıdaki kodu eklemek olacaktır.
extended_valid_elements: "iframe[src|style|scrolling|frameborder|width|height]",
Yukarıda yazmış olduğumuz kod ile (bazılarımız için pek kod olmasa da) artık iframe elementi tinyMCE editörü tarafından engellenmeyecek ve filtrelenmeyecektir. Köşeli parantez içindeki özellikleri yazmamız iframe e ait olan bu özelliklerinde filtrelenmesini önlemek için gereklidir.
Böylelikle dosyanın son hali aşağıdaki gibi olacaktır:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="tinyMCE.ascx.cs" Inherits="admin_tinyMCE" %>
<%@ Import Namespace="BlogEngine.Core" %>
<script type="text/javascript" src="<%=Utils.RelativeWebRoot %>editors/tiny_mce3/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init({
// General options
mode: "exact",
elements : "<%=txtContent.ClientID %>",
theme: "advanced",
plugins : "inlinepopups,fullscreen,contextmenu,emotions,table,iespell,advlink",
convert_urls: false,
// Theme options
theme_advanced_buttons1:
"fullscreen,code,|,cut,copy,paste,|,undo,redo,|,bold,italic,underline,strikethrough,|,justifyleft,justifyce
nter,justifyright,justifyfull,|,bullist,numlist,outdent,indent,|,iespell,link,unlink,sub,sup,removeformat,c
leanup,charmap,emotions,|,formatselect,fontselect,fontsizeselect",
theme_advanced_buttons2: "",
theme_advanced_toolbar_location: "top",
theme_advanced_toolbar_align: "left",
theme_advanced_statusbar_location: "bottom",
theme_advanced_resizing: true,
extended_valid_elements: "iframe[src|style|scrolling|frameborder|width|height]",
tab_focus : ":prev,:next"
});
</script>
<asp:TextBox runat="Server" ID="txtContent" CssClass="post" Width="100%" Height="250px"
TextMode="MultiLine" />
Dikkat: BlogEngine 1.5 sürümü ile birlikte yeni tinyMCE editörü gelmekte ve EMBED kodları desteklenmektedir. Bu bakımdan 1.4.5 ve altındaki sürümlere sahip olanlar MSN Video, YouTube gibi sitelerden aldıkları embed kodlarını çalıştırabilmek için şöyle bir kod ekleyebilirler: embed[quality|type|pluginspage|width|height|src|align]
Bu kodlar tek başına eklenebileceği gibi birden fazlası bir arada eklenebilir. OBJECT tagi için geçerli olan özelliklere HTML Object Tag adresinden ulaşabilirsiniz.
Bu gibi kodların kullanımını etkin hale getirdiğinizde, bazı olası güvenlik açıklarına da maruz kalabileceğinizi lütfen aklınızdan çıkarmayınız.
İyi çalışmalar.