“网站图标”——就是在地址栏中或收藏夹中显示的图标。像什么雅虎中国就有。
其实要做到这一点并不难,只需要在页面的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()
' 从缓存中读取网站图标的地址
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
' 从缓存中读取网站图标的地址
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标签详解>>
更多相关内容>>
==========================================
作者:二十四画生
转载请注明来源于博客园——二十四画生的Blog,并保留有原文链接。