[DNN学习所得]显示网站图标

王朝other·作者佚名  2006-01-09
宽屏版  字体: |||超大  

“网站图标”——就是在地址栏中或收藏夹中显示的图标。像什么雅虎中国就有。

其实要做到这一点并不难,只需要在页面的HTML Header中增加:<link rel="Shortcut Icon" href="favicon.ico"> 强制要求浏览器请求这个图片即可。

今天在看DNN代码时发现DNN居然也有这个功能(DNN考虑的真全面呀!

)。我们只需要用网站管理员的身份登录在文件管理中把图标文件以favicon.ico的文件名形式将文件上传到根目录即可。(注:要上传.ico文件需要将主机设置中允许上传的文件扩展名项中添加ico文件选项)

实现功能如下:

在DNN中的实现方式:

1、在Default.aspx文件中添加

<asp:placeholder id="FAVICON" runat="server"></asp:placeholder>

后台代码向里面添加控件(这种方式还可以用来由后台向页面写JavaScript脚本,用来控制不允许页面复制,禁用右键等,这可以在主机设置信息中添加设置项,又是一个可改进的小地方

2、在其后台页面中:

Private Sub ManageFavicon()Sub ManageFavicon()

' 从缓存中读取网站图标的地址

Dim strFavicon As String = CType(DataCache.GetCache("FAVICON" & PortalSettings.PortalId.ToString), String)

If strFavicon = "" Then

' 如果网站图像的地址存在

If File.Exists(PortalSettings.HomeDirectoryMapPath & "favicon.ico") Then

strFavicon = PortalSettings.HomeDirectory & "favicon.ico"

If Not Common.Globals.PerformanceSetting = Common.Globals.PerformanceSettings.NoCaching Then

' 当设置需要缓存时将信息写入缓存

DataCache.SetCache("FAVICON" & PortalSettings.PortalId.ToString, strFavicon)

End If

End If

End If

' 当网站图像的连接地址不等于空时,将它添加到页面中

If strFavicon <> "" Then

' 添加一个LINK标签HTML控件

Dim objLink As HtmlGenericControl = New HtmlGenericControl("LINK")

' 设置rel属性为SHORTCUT ICON

objLink.Attributes("rel") = "SHORTCUT ICON"

' 设置图标路径

objLink.Attributes("href") = strFavicon

' 将LINK添加到FAVICON控件中

Dim ctlFavicon As Control = Me.FindControl("FAVICON")

ctlFavicon.Controls.Add(objLink)

End If

End Sub

另外首页中还有许多meta标签,今天也查了一下它的用途,共享一下给大家分享:

Meta标签详解>>

更多相关内容>>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有