首先,火山鸽的DreamCat就像是一个病危的年青人一样,虽然发展潜力可能很大,但是现在只能躺在病床上半死不活地打吊针,严重耽误了我的外交活动。虽然我几次督促废物火山鸽进行起码地整活,但火山鸽最近沉迷于吃叉鸡无法自拔,因而如果想让DreamCat在目前版本能勉强使用的话,作为一个只会东拼西凑的人不得已地被迫参考网上众多大神的记录进行如下修改。这篇文章主要记录了对火山鸽DreamCat模板的整活手术过程。
- DreamCat版本:X1.3-200331
- 操作所需技术水准:0
- DreamCat下载地址:Github
1.侧边栏不显示独立页面问题
由于火山鸽鸽了,侧边栏没有显示独立页面。这就像是长了一只手却没有手掌一样,非常火山。必要地,需要显示独立页面。
<!-- 页面 -->
<div class="mdui-collapse-item mdui-collapse-item-dense">
<div class="mdui-collapse-item-header mdui-list-item">
<i class="mdui-list-item-icon mdui-icon material-icons mdui-text-color-theme-text">layers</i>
<div class="mdui-list-item-content mdui-text-color-theme-text">页 面</div>
<i class="mdui-collapse-item-arrow mdui-list-item-icon mdui-icon material-icons mdui-ripple mdui-text-color-theme-text">keyboard_arrow_down</i>
</div>
<div class="mdui-collapse-item-body" style="">
<ul class="mdui-list mdui-list-dense" for="show-category-button">
<?php $this->widget('Widget_Contents_Page_List')->to($pages); ?>
<?php while ($pages->next()): ?>
<li class="mdui-list-item mdui-ripple">
<a href="<?php $pages->permalink(); ?>" class="mdui-list-item-content mdui-text-color-theme-text" title="<?php $pages->title(); ?>">
<?php $pages->title(); ?>
</a>
</li>
<?php endwhile; ?>
</ul>
</div>
</div>
通过复制粘贴,将以上代码放进header.php侧边栏里你想要显示的地方即可。如此即可在侧边栏显示出独立页面。
效果:
2.侧边栏默认显示非常火山
由于火山鸽的审美与我不一样,我觉得DreamCat的侧边栏默认是显示这一点非常火山。
<header>
<div class="mdui-drawer mdui-color-grey-50 mdui-drawer-close" style="background: linear-gradient(135deg,#ECEFF1 0,#FAFAFA 60%);" id="main-drawer">
<div class="mdui-list DreamCat-List-01" mdui-collapse="{accordion: true}" style="margin-bottom: 50%;">
<div class="mdui-card DreamCat-List-02" style="overflow: inherit;">
<div class="DreamCat-menu-bg" style="background: url(<?php $this->options->themeUrl('src/img/brand.jpg'); ?>);">
<img class="DreamCat-List-headimg mdui-shadow-6" src="//q2.qlogo.cn/headimg_dl?dst_uin=<?php $this->author->mail();?>&spec=640">
<div class="mdui-card-media-covered">
<div class="mdui-card-primary">
<div class="DreamCat-menu-author font-weight: 400; mdui-valign"><?php $this->author(); ?></div>
</div>
</div>
</div>
</div>
通过复制粘贴,将以上代码替换掉header.php对应部分即可。如此即可默认隐藏侧边栏。不过,侧边栏直接调用了QQ头像,这点可能需要在之后的版本按需选择。就现在来讲,解决方案可以参照第7条所写。
效果:
3.文章页在手机端浏览时上方留白过多
手机端浏览时,由于火山鸽写死了,文章页距离顶部太远了。
@media screen and (max-width: 760px){
.DreamCat-content-header {
min-height: auto;
}
}
通过复制粘贴,将以上代码粘贴在post.php<style>间对应部分即可。如此即可将就着用了。
4.文章页字数统计和最后编辑时间BUG
字数统计问题据称已经在最新版本得到解决。最后编辑时间仍然显示为发表时间,表明这项功能毫无作用。
function art_count ($cid){
$db=Typecho_Db::get ();
$rs=$db->fetchRow ($db->select ('table.contents.text')->from ('table.contents')->where ('table.contents.cid=?',$cid)->order ('table.contents.cid',Typecho_Db::SORT_ASC)->limit (1));
$text = preg_replace("/[^\x{4e00}-\x{9fa5}]/u", "", $rs['text']);
echo mb_strlen($text,'UTF-8');
}
通过复制粘贴,将以上代码替换掉functions.php对应部分即可。用以正确地显示文章字数。
<?php echo date('Y 年 m 月 d 日' , $this->modified); ?>
用以输出最后编辑文章的时间。替换掉functions.php对应部分即可。
5.根本没有写页面的问题
作为一个已经发布0.1版本的Typecho模板,火山鸽果然将页面部分直接鸽掉了。建议枪毙。
鉴于火山鸽的POST页面并没有调用分类、标签之类文章才有的代码,直接通过复制粘贴将修改过后的post.php粘贴到page.php即可。
6.评论栏没有对齐的问题
这个据称已经在最新版(但还没有发布,据称在5月3日发布)解决。故此处略去过程,建议直接下载最新版。
7.404页面侧边栏头像无法显示问题
同2,这个问题非常火山。直接调用QQ头像泄露QQ,不愧是你啊,火山。
在火山鸽还没写出设置来放头像的情况下,注意到DreamCat的外观设置还是照搬默认模板的,不妨:
<img class="DreamCat-List-headimg mdui-shadow-6" src="<?php $this->options->logoUrl() ?>">
复制以上代码替换掉header.php对应部分,然后在后台的外观设置中设置站点 LOGO 地址即可。其它但凡直接调用QQ头像的部分也可以这样替换掉。
这样就避免了直接调用QQ头像泄露QQ号,同时也解决了404页面侧边栏无法显示头像的问题,效果如下:
今天才注意到这个火山特色的模板不止一处调用了毫无遮掩的头像……其它几处头像也就依样画葫芦办了 >( ´_っ`)
写一般咕了,这很幻焕
“一半”,辣鸡输入法
在写了在写了,大不了就做个圆场,把咕了的部分去掉不久看起来没咕了吗