• 改进housemenu2使网站导航亲Seo并在新窗口中打开。


    DNN5.1.4使用的导航菜单是SoplarMenu,使用到了axd,jquery,不仅资源较大,而且生成的html代码不是搜索引擎青睐的<ul><li></li></ul>形式,更让人头疼

    的是不能在新窗口中打开。在多位前辈的博客中都提到改用housemenu,于是乎到其官方网站http://www.houseofnuke.com/下载了最新的版本housemenu2,可

    让人失望的是出现了这样那样的问题,比如二级菜单不能出现,IE6中hover到父菜单二级菜单不出现等问题,而且这些问题都是共性的。在其官方论坛中也有好多类似

    的提问,但是没有得到官方的及时回复。不得以,用reflection反编译了housemenu,经过测试,找到了这些问题所在,并做了修改重新编译了一下,上传dll到服务器

    后经测试能使用。同时,结合中国国情,将原来的在本页面打开修改成了在新页面中打开(_blank).这是我应用这个改进版的站http://www.taotel.com/,大家可以看

    看menu的效果,因为CSS我不是擅长,有些地方还不如人意,希望大家多包涵,改进。下面我就将部署的具体过程及相关文件列出来:

    1、上传附件中的Avastone.HouseMenu.dll到服务器网站中的bin目录下,avastone.housemenu文件夹到DesktopModules文件夹下,

    CSS文件HouseMenu.css上传到你哪里呢?你自己随便放一个位置吧,比如放到images文件夹,然后在Default.aspx中添加引用就行。

    为简单起见,我们放在head之间吧。当然这个CSS文件是我在原来官方的基础上修改的。你可能要对图片路径或者其它样式做修改以适合你的网站哦。

    代码
    <head id="Head" runat="server">
        
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
        
    <meta id="MetaRefresh" runat="Server" http-equiv="Refresh" name="Refresh" />
        
    <meta id="MetaDescription" runat="Server" name="DESCRIPTION" />
        
    <meta id="MetaKeywords" runat="Server" name="KEYWORDS" />
        
    <meta id="MetaCopyright" runat="Server" name="COPYRIGHT" />
        
    <meta id="MetaGenerator" runat="Server" name="GENERATOR" />
        
    <meta id="MetaAuthor" runat="Server" name="AUTHOR" />
        
    <meta id="MetaRobots" runat="server" name="ROBOTS" />
        <link rel="stylesheet" href="/images/housemenu.css" type="text/css">
        
    <script src="/Resources/Shared/scripts/jquery/jquery.min.js" type="text/javascript"></script>
    </head>

    2、打开网站所使用的首页模板文件。我用的是默认皮肤MinimalExtropy。所以路径是Portals\_default\Skins\MinimalExtropy\index.ascx.打开

    找到menu所在的位置

    代码
     <div class="menu_style">
      
    <dnn:NAV runat="server" id="dnnNAV"  ProviderName="DNNMenuNavigationProvider" IndicateChildren="false" ControlOrientation="Horizontal" CSSControl="mainMenu" />
     
    </div>

    这是默认的导航栏,即上文所说的soplarmenu.我们不用它,将它换成housemenu,修改成如下

        <div class="menu_style">
            
    <dnn:HOUSEMENU runat="server" ID="HouseMenuNav" RootMenuOrientation="Horizontal"  MaxDepth="88"  RootDepth="0" MenuClientId="houseMenuH"/>
        
    </div>

    同时在index.ascx头部添加

    <%@ Register TagPrefix="dnn" TagName="HOUSEMENU" Src="~/DesktopModules/avastone.housemenu/HouseMenu.ascx" %>

    3、修改完default.aspx,index.ascx.上传到服务器覆盖即可。

    附件(包含一个文件夹,一个dll,一个css文件,之前的压缩包里dll有误,请重新下载)

    /Files/showker/avastone.housemenu-byshowker2.rar

  • 相关阅读:
    IMYSQL-叶金荣
    mysql命令
    实效云计算用户组(ECUG) 与 阿里云
    GO 语言
    MYSQL 源代码编绎脚本
    MYSQL 源代码学习
    LINUX 性能工具使用
    CentOS 5.8 上安装 systemtap-2.6 转
    mysql php nginx
    redis 安装
  • 原文地址:https://www.cnblogs.com/showker/p/1640500.html
Copyright © 2020-2023  润新知