Typecho并没有像wordpress那样单独管理菜单的功能,而是需要在header文件里面修改,所以也没有相对便捷管理菜单的方法,如果在一级菜单下面添加了子菜单,那么二级菜单也会跟一级菜单并排显示,那怎么样实现把二级菜单放到一级菜单的下拉呢?研究了一下,可以通过单独读取出来写入一个动态的菜单里面去,代码如下:

function mainmenu(){
    $html = '<ul id="mainmenu"><li><a href="/">首页</a></li>
<li><a class="hot" href="/cuxiao.html">热门促销<hd>活动</hd></a></li>
<li><a href="/taobao.html">淘宝<hd>优惠券</hd></a></li>
<li><a href="/jingdong.html">京东<hd>优惠券</hd></a></li>
<li><a href="/brands.html">品牌</hd></a></li>';
    $db = Typecho_Db::get();
    $categories = $db->fetchAll($db->select('table.metas.*')->from('table.metas')
    ->where('table.metas.type = ?',"category")
    ->order('table.metas.order', Typecho_Db::SORT_ASC));
    $category_arr = [];
    if($categories){
        foreach($categories as $category){
            $parent = $category["parent"];
            $category_arr[$parent][] =$category;
        }
    }
    $category_level_1 = $category_arr[0];
    foreach($category_level_1 as $_category){
        $mid = $_category["mid"];
        if($category_arr[$mid]){
            $has_submenu = " class='has_submenu'";
        }
        else{
            $has_submenu = "";
        }
        $html .= "<li".$has_submenu."><a href='/".$_category["slug"]."'>".$_category["name"]."</a>";
        if($category_arr[$mid]){
            $html .= "<ul class='sub_menu'>";
            foreach($category_arr[$mid] as $_sub_category){
                $html .= "<li><a href='/".$_sub_category["slug"]."'>".$_sub_category["name"]."</a>";
            }
            $html .= "</ul>";        
        }
        $html .= "</li>";
    }
    $html .= "</ul>";
    return $html;
}

把上面这段代码加入到主题的function.php文件里央,然后只需要在调用的地方引用这个菜单函数即可。

css样式:

mainmenu{ list-style:none; margin:0px; padding:0px;}#mainmenu li{ display:inline-block;margin-bottom: -4px; position:relative;}#mainmenu li ul li{ display:block; width:100px; text-align:center;}#mainmenu li ul li a{ width:100%; padding:0px;}#mainmenu li ul li:last-child a{ border:1px solid #eee;}.sub_menu{ display:none; position:absolute; top:32px; left:0px; padding:0px; margin:0px; background-color:#fff; z-index:9;}

阅读全文

前些天买了一个吊坠,没想到引起了过敏反应,于是想知道戴玉器为什么会引起过敏反应,没想到一搜索真是毁三观。

先来看搜索结果,关键词:带玉吊坠为什么过敏。

第一条结果

开头就说玉吊坠的药用价值和食用价值很高。如此违背常理的内容,也被百度推荐,真让人大跌眼镜。1.jpg

阅读全文

这几天睡眠不足,状态不是很好,前天晚上骑行梧桐绿道就感觉有点点不适,强度并不大的坡,骑完却有点想干呕的感觉,以前从没出现过这种情况。

昨天作死又约了骑友骑行坡度更加陡的银湖山,从南边爬这坡更是变态地达到20多度。之前也爬过很多次,基本也没什么题,但是这一次爬了几百米,就感觉很吃力了,一度想要放弃爬上这600米变态坡。但终究还是撑着爬上去了,但是状态跟之前爬上去后的状态完全不一样了,感觉手脚有点麻木无力,有点干呕想吐。于是找了一个有点风的地方脱了衣服吹下风,休息一下,但是感觉并没有好很多,于是让骑友自己继续,我准备下山去了。

来到山下买了瓶冰的矿泉水,洗了把脸,给四肢和身体抹了点冰水降温,坐下来休息了一会,感觉舒服了一些。于是又继续骑车来到清水河社康准备拿点正气水喝喝,但是这里没有正气水,只有胶囊,那胶囊就胶囊吧,只要能缓解就行。

其实在社康里面吹了下空调以后就感觉没啥问题了。

阅读全文