推56论坛

 找回密码
 立即注册(限中文)

QQ登录

只需一步,快速开始

    查看: 240|回复: 0

    [ECshop教程] ecshop简单三步实现导航商品分类二级菜单

    [复制链接]
    发表于 2018-4-28 18:55:50 | 显示全部楼层 |阅读模式
    1.在page_header.lbi对应的位置(你想显示导航的位置)插入 (注意下面的 themes/模板名称/util.php中的模板名称改成你模板 文件 夹的名称) ? php require_once(themes/模板名称/util.php); ? div class = h
    1.在page_header.lbi对应的位置(你想显示导航的位置)插入


      (注意下面的"themes/模板名称/util.php"中的"模板名称"改成你模板文件夹的名称)

    <?php
        require_once("themes/模板名称/util.php");
    ?>
    <div class="header-menu">  
                 <p {if $navigator_list.config.index eq 1} class="cur" {/if}><a href="../index.php">{$lang.home}</a></p>   
                    <ul>                  
                      <!-- {foreach name=nav_middle_list from=$navigator_list.middle item=nav} -->
                       <li {if $nav.active eq 1} class="curs"{/if}>
                       <a href="{$nav.url}" {if $nav.opennew eq 1}target="_blank" {/if}>{$nav.name}</a>
                      <?php  
                                      $subcates = get_subcate_byurl($GLOBALS['smarty']->_var['nav']['url']);
                                 if($subcates!=false)
                            {
                                    if(count($subcates)>0)
                                {
                                        echo "<div class='sub_nav'>";
                                     
                                    if($subcates)
                                    {
                                    foreach($subcates as $cate)
                                    {
                                            echo "<a href='".$cate['url']."' class='level_1'>".$cate['name']."</a>";
                                        
                                    }
                                    }                                 
                                    echo "</div><iframe frameborder='0' scrolling='no' class='nomask'></iframe>";
                                }
                            }
                                 ?>
                       </li>
                     <!-- {/foreach} -->
                </ul>
          <script type="text/javascript">
          //初始化主菜单
                    function sw_nav(obj,tag)
                    {

                            var subdivs = obj.getElementsByTagName_r("DIV");
                            var ifs = obj.getElementsByTagName_r("IFRAME");
                            
                            if(subdivs.length>0)
                            {

                                    if(tag==1)
                                    {
                                            subdivs[0].style.display = "block";
                                            ifs[0].style.display = "block";
                                    }
                                    else
                                    {
                                            subdivs[0].style.display = "none";         
                                            ifs[0].style.display = "none";
                                    }
                                     
                            }
                    }

          </script>  
    </div>

    2.在CSS文件中插入

    .header-menu p{ float:left;padding:1px 12px 1px 0;margin-top:-2px;}
    .header-menu  ul li{float:left;padding:1px 12px 1px 12px;margin-top:-2px;}
    .header-menu ul li a,.header-menu p a{color: #333;display:block;}
    .header-menu ul li a:hover,.header-menu p a:hover{color:#888;}
    .header-menu ul li.curs{background:#999;}
    .header-menu ul li.curs a{color:#fff;}

    .sub_nav{ background:#999;width:110px; position:absolute; z-index:5003; display:none;margin-left:-12px;}
    .nomask{ background:#fff; width:110px; height:50px; position:absolute; z-index:5002;display:none;margin-left:-12px;}
    .sub_nav a.level_1{ display:block;color:#fff;padding:6px 6px 6px 13px;font:11px Tahoma,Verdana,PMingLiU,Arial;border-bottom:1px dotted #D1D1D1;*border-bottom:1px dotted #D1D1D1 !important;*border-bottom:1px solid #A8A8A8;}
    .sub_nav a.level_1:hover{color:#fff;background:#55B46C;text-decoration:none;}
    3.把以下代码编辑成(util.php)解压出来拷贝到模板目录下

    <?php

    function get_subcate_byurl($url)
    {
        $rs = strpos($url,"category");
        if($rs!==false)
        {
            preg_match("/\d+/i",$url,$matches);
            $cid = $matches[0];
            $cat_arr = array();
            $sql = "select * from ".$GLOBALS['ecs']->table('category')." where parent_id=".$cid." and is_show=1";
            $res = $GLOBALS['db']->getAll($sql);
             
            foreach($res as $idx => $row)
            {
                $cat_arr[$idx]['id']   = $row['cat_id'];
                $cat_arr[$idx]['name'] = $row['cat_name'];
                $cat_arr[$idx]['url']  = build_uri('category', array('cid' => $row['cat_id']), $row['cat_name']);
                $cat_arr[$idx]['children'] = get_clild_list($row['cat_id']);
            }

            return $cat_arr;
        }
        else  
        {
            return false;
        }
    }

    function get_clild_list($pid)
    {
       //开始获取子分类
        $sql_sub = "select * from ".$GLOBALS['ecs']->table('category')." where parent_id=".$pid." and is_show=1";

        $subres = $GLOBALS['db']->getAll($sql_sub);
        if($subres)
        {
            foreach ($subres as $sidx => $subrow)
            {
                $children[$sidx]['id']=$subrow['cat_id'];
                $children[$sidx]['name']=$subrow['cat_name'];
                $children[$sidx]['url']=build_uri('category', array('cid' => $subrow['cat_id']), $subrow['cat_name']);
            }
        }
        else  
        {
            $children = null;
        }
                
        return $children;
    }

    ?>

    学建站、学推广、学赚钱,上56站长论坛就够了!个性签名请到个人资料里面修改……

    本版积分规则

    关闭

    推56站长论坛推荐上一条 /2 下一条

    站长QQ
    在线咨询
    咨询热线
    QQ:405327411
    站长

    QQ|广告合作|关于我们|联系我们|免责声明|网站导航|站长论坛 ( 豫ICP备11018337号-5

    王宝臣旗下网站 推56论坛(www.tui56.com|ask.tui56.com|blog.tui56.com|daohang.tui56.com)

    Powered by Discuz! X3.4 Licensed

    ©2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表